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
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号