1.使用union 或者union all 的时候 查询 列数必须是一致的,不一致需要使用null 进行补全
2.with 语句的意思是 在查询期间为查询创建一个临时的view 这个view值只在查询期间有效,查询完毕之后立马消失
3.inner join left join right join full join 的区别
inner join :返回的结果是两边表同事存在的结果才会返回, inner join 除了使用 on 写法之外 还能直接使用where 语句
例如: welect a. name,a.age b.departno,b.sal where a.id=b.userid 这样也可以 等同于 inner join
left join: 返回的结果只是 以左边的表为准则.将返回左边表的 所有符合条件的结果,并且右边表如果没有结果的话会用空数据补全
right join:与left join相反
full join :两边的表相匹配的会展示在同一行,不匹配的各自显示
4.自关联,把自己查询两次当成不同的表.起不同的别名,然后可以进行join 查询即可
5.与空值比较之后得到的结果还是空
COALESCE ( expression,value1,value2……,valuen) COALESCE()函数的第一个参数expression为待检测的表达式,而其后的参数个数不定。
COALESCE()函数将会返回包括expression在内的所有参数中的第一个非空表达式。如果
expression不为空值则返回expression;否则判断value1是否是空值,如果value1不为空值则返
回value1;否则判断value2是否是空值,如果value2不为空值则返回value3;……以此类推,
如果所有的表达式都为空值,则返回NULL。