• 技术文章 >数据库 >mysql教程

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

    coldplay.xixicoldplay.xixi2020-09-15 14:31:26原创6253

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

    【相关学习推荐: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核实处理。
    上一篇:mysql如何删除多个表格数据库数据 下一篇:mysql如何查看用户权限
    20期PHP线上班

    相关文章推荐

    精选22门好课,价值3725元,开通VIP免费学习!• 继续请问mysql查询语句:多表联合查询,怎么限定右侧的表如果有对应记录则加入特定的where限制或者limit限制,反之则不加限制• MySQL多表联合查询说明• 分析优化Mysql 多表联合查询效率• mysql多表联合查询
    1/1

    PHP中文网