mysql的union连接查询

union:把多条select语句的结果合并到一起称之为联合操作.竖着连接

场景:获得数据的条件,出现逻辑冲突,或者很难再一个逻辑内表示,就可以拆分为多个逻辑,分别实现。

要求:字段名是相同的。如果严格要求字段的类型也要是一样的,但是因为数据库会自动转化数据类型所以也是允许不同的.

例:(select t_name,days from teacher_class where c_name='php0115' order by days desc limit 1)union all(select t_name,days from teacher_class where c_name='php0100' order by days desc limit 1)。

union会把所得的结果自动去除重复值(distinct).想要全部显示可以用union all 如上

对于()里面的子查询语句,需注意order by在不加limit的情况下不起作用。还有最好能加上().

还可以对总的结果进行排序:()union()order by days

 

posted @ 2015-11-04 09:35  你的左耳耳钉  阅读(199)  评论(0编辑  收藏  举报