MySQLunion 语法代码演示

以下的文章主要介绍的是MySQLunion 语法代码演示,我前两天在相关网站看见MySQLunion 语法代码演示的资料,觉得挺好,就拿出来供大家分享。希望在你今后的学习中会对你有所帮助。

复制代码

  1. SELECT ...   
  2. UNION [ALL | DISTINCT]   
  3. SELECT ...   
  4. [UNION [ALL | DISTINCT]   
  5. SELECT ...]   
  6. SELECT ... UNION [ALL | DISTINCT] SELECT ... [UNION [ALL | DISTINCT] SELECT ...]  

UNION 用于把来自许多SELECT语句的结果组合到一个结果集合中。 (如果你要将多个表的查询结果进行合并输出比如说 群组消息跟个人消息表是分离的但是想一起提取出来并显示的话就可以如此处理。通过MySQLUNION联合查询出来即可)

列于每个SELECT语句的对应位置的被选择的列应具有相同的类型(前提条件是两个SELECT出来的列类型要保持一样的才行!)。(例如,被*** 个语句选择的***列应和被其它语句选择的***列具有相同的类型。)在***个SELECT语句中被使用的列名称也被用于结果的列名称。

SELECT语句为常规的选择语句,但是受到如下的限定:

只有***一个SELECT语句可以使用INTO OUTFILE。

HIGH_PRIORITY不能与作为UNION一部分的SELECT语句同时使用。如果您对***个 SELECT指定了HIGH_PRIORITY,则不会起作用。如果您对其它后续的SELECT语句指定HIGH_PRIORITY,则会产生语法错 误。

如果您对UNION不使用关键词ALL,则所有返回的行都是唯一的,如同您已经对整个结果集合使用了DISTINCT。如果您指定了ALL,您会从 所有用过的SELECT语句中得到所有匹配的行。

DISTINCT关键词是一个自选词,不起任何作用,但是根据SQL标准的要求,在语法中允许采用。(在MySQL中,DISTINCT代表一个共 用体的默认工作性质。)

您可以在同一查询中混合UNION ALL和UNION DISTINCT。被混合的UNION类型按照这样的方式对待,即DISTICT共用体覆盖位于其左边的所有ALL共用体。DISTINCT共用体可以使 用UNION DISTINCT明确地生成,或使用UNION(后面不加DISTINCT或ALL关键词)隐含地生成。

如果您想使用ORDER BY或LIMIT子句来对全部UNION结果进行分类或限制,则应对单个地SELECT语句加圆括号,并把ORDER BY或LIMIT放到***一个的后面。以下例子同时使用了这两个子句:

代码 复制代码

  1. (SELECT a FROM tbl_name WHERE a=10 AND B=1)UNION(SELECT a FROM tbl_name WHERE a=11 AND B=2)ORDER BY a LIMIT 10;  

(如果想要实现分页的话可以这样处理 将两个查询的结果集当作是一个大的结果集处理然后再对此大的结果集进行LIMIT处理即可实现!)好好好 ~!
(SELECT a FROM tbl_name WHERE a=10 AND B=1)MySQLUNION(SELECT a FROM tbl_name WHERE a=11 AND B=2)ORDER BY a LIMIT 10;

这种ORDER BY不能使用包括表名称(也就是,采用tbl_name.col_name格式的名称)列引用。可以在***个SELECT语句中提供一个列别名,并在 ORDER BY中参阅别名,或使用列位置在ORDER BY中参阅列。(***采用别名,因为不建议使用列位置。)

另外,如果带分类的一列有别名,则ORDER BY子句必须引用别名,而不能引用列名称。以下语句中的***个语句必须运行,但是第二个会运行失败,出现在’order clause’中有未知列’a’的错误:

代码 复制代码

  1. (SELECT a AS b FROM t) UNION (SELECT ...) ORDER BY b;
    (SELECT a AS b FROM t) UNION (SELECT ...) ORDER BY a;
    To apply ORDER BY or LIMIT to an individual SELECT, 
    place the clause inside the parentheses that enclose the SELECT:   
  2. (SELECT a AS b FROM t) UNION (SELECT ...) ORDER BY b;
    (SELECT a AS b FROM t) UNION (SELECT ...) ORDER BY a;
    To apply ORDER BY or LIMIT to an individual SELECT, 
    place the clause inside the parentheses that enclose the SELECT:  

为了对单个SELECT使用ORDER BY或LIMIT,应把子句放入圆括号中。圆括号包含了SELECT:

代码 复制代码

  1. (SELECT a FROM tbl_name WHERE a=10 AND B=1 ORDER BY a LIMIT 10)
    UNION(SELECT a FROM tbl_name WHERE 
    a=11 AND B=2 ORDER BY a LIMIT 10);   
  2. (SELECT a FROM tbl_name WHERE a=10 AND B=1 ORDER BY a LIMIT 10)
    UNION(SELECT a FROM tbl_name WHERE 
    a=11 AND B=2 ORDER BY a LIMIT 10); 

二 实例扩展

MySQLunion可以对同一个表的两次查询联合起来. 这样做的益处也非常明显, 比如在blog应用中, 可以利用一条sql语句实现置顶blog和普通blog的分页显示.

代码 复制代码

  1. (   
  2. SELECT *   
  3. FROM `blog`   
  4. WHERE top=1   
  5. ORDER BY created DESC   
  6. )   
  7. UNION (   
  8. SELECT *   
  9. FROM `blog`   
  10. WHERE top = 0   
  11. ORDER BY created DESC   
  12. ) LIMIT 2 , 3   
  13.  

以上的相关内容就是对MySQLunion语法的介绍,望你能有所收获。
 

【编辑推荐】

  1. MySQL命令行的常用命令介绍
  2. MySQL数据库所支持的三个引擎
  3. MySQL数据类型与相应的建库策略
  4. Mysql临时表的具体使用方案
  5. MySQL连接池的实际配置问题

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/258867.html<

(0)
管理的头像管理
上一篇2025-05-02 10:35
下一篇 2025-05-02 10:36

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注