union和union all

首先是一个普通的sql查询:

select * from student_course_teacher where sname='张三';

结果如下:(student_course_teacher是一个视图)

使用union进行连接:

select * from student_course_teacher where sname='张三'
UNION
select * from student_course_teacher where sname='张三';

结果如下:

使用union all 进行连接:

select * from student_course_teacher where sname='张三'
UNION all
select * from student_course_teacher where sname='张三';

结果如下:

那么union all可以连续使用吗?

测试sql:

select * from student_course_teacher where sname='张三'
UNION all
select * from student_course_teacher where sname='张三'
UNION all
select * from student_course_teacher where sname='张三';

结果如下:

 

结论:

union和union all是将两条或者多条查询的sql结果相加(注意这边是result+result,而不是result*result),union会去除掉重复的数据而union all不会去除掉重复的数据。

 

posted @ 2017-03-17 12:18  wizardycc  阅读(136)  评论(0)    收藏  举报