MySQL UNION 中使用 LIMIT实例

时间:2015-12-11
mysql中union用于合并两个或多个 SELECT 语句的结果集,LIMIT 用于对结果集进行分页显示,本文章将这两个语句结合起来使用,向大家介绍limit 如何在 union 中使用。

在 MySQL UNION 中使用 LIMIT 用于限制返回的记录条数,如果对 SELECT 子句做限制,需要对 SELECT 添加圆括号:

(SELECT aid,title FROM article LIMIT 2) 
UNION ALL
(SELECT bid,title FROM blog LIMIT 2)

该 SQL 会返回个 SELECT 语句的两条记录,如果不添加圆括号,则最后一个 LIMIT 2 会作用于整个 UNION 语句而一共返回 2 条记录。

同 ORDER BY 类似,当需要对整个 UNION 的结果进行 LIMIT 限制时,建议将各个 SELECT 语句用圆括号括起来以使语句更加清晰:

(SELECT aid,title FROM article) 
UNION ALL
(SELECT bid,title FROM blog)
LIMIT 2

可见,LIMIT 与 ORDER BY 经常搭配使用,二者在 UNION 中的使用方式也是一致的。