mysql复合查询是什么_MySQL基础_复合查询

组合查询

组合查询

UNION

MySQL允许执行多个查询(多个SELECT语句),并将结果作为单个查询结果集返>回。这些组合查询通常称为并(Union)或复合查询(Compound Query)

可以使用UNION来实现并的操作,只需要在几条SELECT语句之间加上UNION就可以了

 
 

mysql&gt SELECT * FROM product

-&gt UNION

-&gt SELECT * FROM vent;

+------+----------+

| name | vent_id  |

+------+----------+

| KOH  | 1        |

| NaOH | 2        |

| KF   | 1        |

| NaF  | 3        |

| 1    | wanqing  |

| 2    | alading  |

| 3    | guoyao   |

| 4    | maikelin |

+------+----------+

有几点使用UNION的注意事项:

  1. UNION中的每个查询必须包含相同的列,表达式或聚集函数
  2. 列数据类型不必完全一样,但是必须兼容。可以让DBMS隐式转换

包含或取消重复的行

如果UNION并的两个SELECT返回了重复的行,那么重复的行将会被省略。比如>说:

 
 

mysql&gt SELECT name,vent_id FROM product UNION SELECT name,vent_id FROM product;

+------+---------+

| name | vent_id |

+------+---------+

| KOH  |       1 |

| NaOH |       2 |

| KF   |       1 |

| NaF  |       3 |

+------+---------+

本来应该返回八行的,但是只返回了四行,因为重复的四行被省略了。想不让它省略可以使用UNION ALL

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值