union

union的效率会比较高。对于连接表来说,每连接一下新表,则匹配的次数将会是成本的翻。但是使用union可以减少匹配次说,在减少匹配次说的情况下,还可以拼接连个查询的结果。

例如

a 连接 b 连接 c
a 10条数据
b 10条数据
c 10条数据
匹配结果总和是1000次。
使用union
a连接b结果 10 10 = 100次;
a连接c结果 10
10 = 100次;
使用union :100+100=200次;

使用

  1. -- union 表连接
  2. SELECT * FROM emp WHERE ename = '小明'
  3. UNION
  4. SELECT * FROM emp WHERE ename = '小绿';

注意:⚠️ 使用union使用结果合并的时候,查询的列必须相同