Loading

MySql学习之组合查询(UNION)和全文本搜索(Match()和Against())

组合查询

一.何为组合查询?
组合查询的目的就是利用UNION操作符将多条SELECT语句的查询结果组合成一个结果集,供我们使用。

有两种基本情况下需要使用组合查询:
1.在单个查询中从不同的表返回类似结构的数据
2.对单个表执行多个查询,按单个查询返回数据

二.创建组合查询
我们可以用UNION操作符来组合数条SQL查询,利用UNION可以给出多条SELECT语句,将他们的结果组合成单个结果集。

例子:假如我们需要价格小于等于5的所有物品的一个列表,而且还想包括供应商1001和1002生产的所有物品。

我们先来看单条语句的实现:

SELECT vend_id, prod_id,prod_price
FROM products
WHERE prod_price<=5;

上面语句查询的是价格小于等于5的所有物品的列表。

SELECT vend_id,prod_id, prod_price
FROM products
WHERE vend_id IN(1001,1002);

上面语句查询的是供应商1001,1002生产的所有物品。

下面是用UNION组合两条语句,一次执行:

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,100
posted @ 2020-08-21 13:05  文牧之  阅读(48)  评论(0)    收藏  举报  来源