首页 >数据库 >mysql教程 >mysql中的多表联合查询语句是什么

mysql中的多表联合查询语句是什么

coldplay.xixi
coldplay.xixi原创
2020-09-03 14:01:2511498浏览

mysql中的多表联合查询语句是:【select 语句1 union [union 选项] select 语句2 union [union 选项] select 语句n】。多表联合查询结果是将多个select语句的查询结果联合到一起。

mysql中的多表联合查询语句是什么

【相关学习推荐:mysql教程(视频)】

mysql多表联合查询语句是:

联合查询结果是将多个select语句的查询结果联合到一起。

可以使用union和union all关键字进行合并。

基本语法:

select 语句1

union [union 选项]

select 语句2

union [union 选项]

select 语句n

其中union选项有两个选项可选:all(表示重复也输出);distinct(去重,完全重复的,默认会去重)

两个表的字段一致即可。

例:
select id,addrid 
from addr 
union all 
select id,addrid 
from student

联合查询的意义

1.查询同一张表,但是需求不同

2.多表查询:多张表的结构完全一样,保存的数据(结构)也是一样的

联合查询order by的使用

在联合查询中:order by只能最后使用一个,需要对查询语句用括号才行。

例:
---(错误)
select * from student where sex="man" order by score
union
select * from student wherre sex="woman" order by score;
这种情况会报错,因为一个句子中不能有两个order by
---(正确但不符合所需)
select * from student where sex="man" 
union
select * from student wherre sex="woman" order by score;
这种情况是正确的,但是合并又没有意义,他会把之前的sex分好的情况给打乱
---(正确)
(select * from student where sex="man" order by score 
limit 10)
union
(select * from student wherre sex="woman" order by score
limit 10);
在子语句中使用order by,由于优先级的问题,需要将整个子句用()括起来,且必须和limit结合使用,否则不会生效。

想了解更多编程学习,敬请关注php培训栏目!

以上是mysql中的多表联合查询语句是什么的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn