on&where区别



相同之处都是增加sql的限制条件。

不同的地方是join on当中on的意思就是对join增加限制条件,首先执行on关键字的过滤,>然后获得一个join之后的总的一个数据表,然后通过where对这个表来进行过滤筛选。

on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记
录。

ps:all expressions in a derived table must hava an explicit name
关于这个问题的原因就是使用聚合函数取别名的时候,join前后的名字可能相同,因此需要
将他们的名字修改掉。

1
select case when conversion.offer_Id='1000dm0bj6gq' then 'PS4' else 'PS3' end as Collateral,sum(conversion.email_campaign_cnvrsn_cnt),sum(Targeted_User_Cnt) from EADW_ADM_APP.CAMPAIGN_CONVERSION conversion left join (select offer_Id,Targeted_User_Cnt from EADW_ADM_APP.CAMPAIGN_PROCESS where Campaign_Id='1000dm0bj63b' and lead_type_id='999') n on conversion.offer_Id=n.offer_Id where conversion.Campaign_Id='1000dm0bj63b' and conversion.lead_type_id='999' group by conversion.offer_Id;

sql学习笔记



给数据库的字段取别名的时候能够直接食用’AS’关键字来命名。
1
select count(title) AS title_count from x

给字段当中的值,也就是内容取别名来代替的时候,使用’case when then end’来命名

1
select case when title='a' then BF4 when title='b' then BF3 else BFHL end as title from x

关于group by的使用,最好与聚合函数count,sum等一起使用,这样能进行更好的分类处理,按照group中比较多的列来进行计算。具体的实现方式下次在看。

1
select title from x group by title

Hexo的常用命令

Hexo的常用命令:

新建一篇文章。如果没有设置 layout 的话,默认使用 _config.yml 中的 default_layout 参数代替。如果标题包含空格的话,请使用引号括起来。

1
$ hexo new [layout] <title>

启动服务器

1
$ hexo server

生成静态文件

1
$ hexo generate

部署

1
$ hexo deploy

清除缓存文件 (db.json) 和已生成的静态文件 (public)。

1
$ hexo clean