( 11 )MySQL中的联合查询
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了( 11 )MySQL中的联合查询相关的知识,希望对你有一定的参考价值。
联合查询
联合查询 : 将多次查询(多条select语句) 在记录上进行拼接(字段不会增加)
基本语法:
多条select语句构成,每条select语句获取的字段数必须严格一致(但字段数据类型无关)
select 语句1,
union [union 选项]
select 语句2 ...
union选项 : ALL:保留所用, Distinct : 去重复(默认的)
意义:
1.查询同一张表,但是需求不同 ,例 : 查询学生信息,男生年龄升序,女生年龄降序
2.多表查询,多张表的结构是完全一样的保存的数据也一样
如何实现学生表中男生身高升序,女生升高降序?
联合查询中 Order by 的使用
1,在联合查询中order by 不能直接使用,需要对查询语句使用括号才行
2,若要order by生效,必须搭配limit limit使用限定的最大数即可
eg:
( select * from student where sex = ‘男‘ order by age asc limit 999999 )
union
( select * from student where sex = ‘女‘ order by age desc limit 999999 );
以上是关于( 11 )MySQL中的联合查询的主要内容,如果未能解决你的问题,请参考以下文章
带有联合错误的 MySQL 视图 - “视图的 SELECT 包含 FROM 子句中的子查询”