【MySQL必知必会】学习笔记Day8

2020-01-31  本文已影响0人  小小孩儿的碎碎念

【MySQL必知必会】学习笔记Day8&1.31&D17章&P113-118页

15、组合查询

(1)组合查询

注:多数情况下,组合相同表的两个查询完成的工作与具有多个WHERE子句条件的单条查询完成的工作相同。换句话说,任何具有多个WHERE子句的SELECT语句都可以作为一个组合查询给出

(2)创建组合查询

① 使用UNION

SELECT vend_id,prod_id,prod_price
FROM  products
WHERE prod_price<=5;
SELECT vend_id,prod_id,prod_price
FROM  products
WHERE vend_id IN(1001,1002);
SELECT vend_id,prod_id,prod_price
FROM  products
WHERE prod_price<=5
UNION
SELECT vend_id,prod_id,prod_price
FROM  products
WHERE vend_id IN(1001,1002);
SELECT vend_id,prod_id,prod_price
FROM  products
WHERE prod_price<=5
        OR vend_id IN(1001,1002);

② UNION规则

③ 包含或取消重复的行

SELECT vend_id,prod_id,prod_price
FROM  products
WHERE prod_price<=5
UNION ALL
SELECT vend_id,prod_id,prod_price
FROM  products
WHERE vend_id IN(1001,1002);

④ 对组合查询结果排序

SELECT vend_id,prod_id,prod_price
FROM  products
WHERE prod_price<=5
UNION
SELECT vend_id,prod_id,prod_price
FROM  products
WHERE vend_id IN(1001,1002)
ORDER BY vend_id,prod_price;

注:上述例子是使用的相同的表。但使用UNION的组合查询也可以应用不同的表

【MySQL必知必会】系列笔记:
【MySQL必知必会1-4章】学习笔记Day1
【MySQL必知必会5-7章】学习笔记Day2
【MySQL必知必会8-9章】学习笔记Day3
【MySQL必知必会10章】学习笔记Day4
【MySQL必知必会11-12章】学习笔记Day5
【MySQL必知必会13章】学习笔记Day6
【MySQL必知必会14-16章】学习笔记Day7

上一篇下一篇

猜你喜欢

热点阅读