联合查询

一、定义

联合查询是将多次查询(多次select语句),在记录上进行拼接(字段不会增加)

1.1基本语法

多条select语句构成,每一条select语句获取的字段必须严格一致
(但是字段类型无关)

select 语句1
union[union 选项]
select 语句2...

union 选项:与select选项一样
all:保留所有(不管重复)
distinct:去重,默认选项

1.2 示例

select * from `banner` 
union
SELECT * from `banner` ;
屏幕快照 2017-08-11 下午4.27.14.png
屏幕快照 2017-08-11 下午4.28.22.png

1.3联合查询的意义

联合查询的意义有两个
1.查询同一张表,但需求不同:如查询学生信息,男生身高升序,女生身高降序
2.多表查询:(多表的结构一样,保存数据的结构也一样)
针对大数据量的表,有分表操作

  • 示例:学生信息,男生身高升序,女生身高降序
(select * from my_student where sex = '男' order by age asc limit 9999)
union
 (select * from my_student where sex = '女' order by age desc limit 9999)
备注:

orderby 在联合查询中应该注意两点

  • 1.使用orderby 必须把select 语句用括号括起来
  • 2.必须与limit搭配才能实现排序功能,limit 后面跟一个理论最大值即可
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容