一、联合查询
联合查询是指将多个SELECT语句的结果集合并成一个结果集的查询方式。联合查询的语法格式如下:
n1n2,… FROM table1
UNION [ALL]n1n2,… FROM table2
[UNION [ALL]n1n2,… FROM table3…];UNION表示合并结果集并去除重复行,UNION ALL表示合并结果集并保留重复行。
二、分页查询
分页查询是指将查询结果按照一定的条件分页显示的查询方式。分页查询的语法格式如下:
n1n2,… FROM table
LIMIT offset,rows;offset表示偏移量,即从第几行开始查询;rows表示每页显示的行数。
三、联合查询分页
联合查询分页是指将联合查询的结果集按照一定的条件分页显示的查询方式。联合查询分页的语法格式如下:
n1n2,… FROM table1
UNION [ALL]n1n2,… FROM table2
[UNION [ALL]n1n2,… FROM table3…])
LIMIT offset,rows;括号中的语句为联合查询语句,offset和rows的含义与分页查询相同。
下面以一个简单的示例来说明MySQL联合查询分页的使用方法。假设大家有两个表t1和t2,它们的结构和数据如下:
ame age20
2 Jack 21
3 Mary 22
4 Lucy 23 24
ame age20
2 Jack 21
6 Kate 25
7 Lily 26
8 Bob27
现在大家要查询t1和t2中年龄大于等于22岁的记录,并按照年龄降序排序,每页显示3条记录,查询第2页的记录。查询语句如下:
ame,age FROM t1 WHERE age>=22
UNION ame,age FROM t2 WHERE age>=22)
ORDER BY age DESC
LIMIT 3 OFFSET 3;LIMIT 3表示每页显示3条记录,OFFSET 3表示从第4条记录开始查询,即查询第2页的记录。
以上就是MySQL联合查询分页的详细介绍,希望对大家有所帮助。