联合查询概念了解:
将多次查询
结果,
在字段数相同的情况下
,
在记录的层次上进行拼接。
联合查询的使用:
语法:
select 语句1 + union + [union选项] + select 语句2 + …;
select
*
from
class
union
distinct
select
*
from
class;(联合查询,默认去重)
select
*
from
class
union
all
select
*
from
class;(联合查询,保留所有记录)
select
id, grade, room
from
class
union
distinct
select
name, age, id
from
student;(联合查询只要求字段数相同,和字段类型无关)
联合查询的意义
:
(1)
查询同一张表,例如查询学生信息,要求男生按年龄升序排序,女生按年龄降序排序;
(2)
多表查询,多张表的结构是完全一样的,保持的数据结构也是一样的。
(
select
*
from
student
where
gender =
"boy"
order
by
age
asc
limit
666
)
union
(
select
*
from
student
where
gender =
"girl"
order
by
age
desc
limit
666
);
我们将
select
语句用括号括起来了,要想在联合查询中使
order by
生效,我们必须将其与
limit
搭配使用,而
limit
的限定数,我们设置为一个非常大的数即可。