MySql Union仅从BOTH返回值

时间:2013-03-20 17:17:08

标签: mysql union

Results 1
   Zac
   Dave
   Ned

Results 2
   Eric
   Mark
   Zac

这是选择查询的输出。

select names from table where id=1 UNION select names from tables where id=2; 

我想从两个结果中包含的这些结果中选择所有结果。 Union返回所有名称(Zac只返回一次)。如何让查询只返回Zac?

2 个答案:

答案 0 :(得分:1)

这应该这样做:

SELECT name FROM table1
INNER JOIN table2
USING (name)

<强>结果

| NAME |
--------
|  Zac |

See the demo

答案 1 :(得分:0)

只需在两个表之间使用INNER JOIN

SELECT a.name
FROM table1 AS a
JOIN table2 AS b ON a.name = b.name