🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 联合查询 #### 基本概念 1. 联合查询是可合并多个相似的选择查询的结果集。等同于将一个表追加到另一个表,从而实现将两个表的查询组合到一起,使用谓词为UNION或UNION ALL. 2. 将多个查询的结果合并到一起(纵向合并):字段数不变,多个查询的记录数合并. #### 应用场景 1. 将同一张表中不同的结果(需要对应多条查询语句来实现),合并到一起展示数据男生身高升序排序,女生身高降序排序. 2. 最常见:在数据量大的情况下,会对表进行分表操作,需要对每张表进行部分数据统计,使用联合查询来讲数据存放到一起显示. * QQ1表获取在线数据 * QQ2表获取在线数据 ---> 将所有在线的数据显示出来 #### 语法 ~~~ select 语句 union[选项] select 语句 ~~~ Union选项:与select选项基本一样. Distinct:去重,去掉完全重复的数据(默认的). All:保存所有的结果. 1. 注意细节:union理论上只要保证字段数一样,不需要每次拿到的数据对应的字段类型一致。永远只保留第一个select语句对应的字段名字. 2. 在联合查询中,如果要使用order by,那么对应的select语句必须使用括号括起来. 3. orderby在联合查询中若要生效,必须配合使用limit:而limit后面必须跟对应的限制数量(通常可以使用一个较大的值:大于对应表的记录数). 4. 联合查询中可以使用字句,但是只有使用order by的时候需要加括号.