繁体   English   中英

从两列中选择不同的

[英]Select distinct from two column

我的数据库是这样的:表名:messages

| receive | transmit |
---------------------
|   1    |  5    |
|   1    |  6    |
|   1    |  3    |
|   3    |  1    |
|   4    |  1    |
|   2    |  3    |
|   4    |  6    |
|   7    |  9    |

我正在尝试从每个表中获取所有唯一ID。 所以我的答案必须是1、3、4、5、6。

如果我使用SELECT DISTINCT receive FROM messages ; 我会得到1,3,4

如果我使用SELECT DISTINCT transmit FROM messages ; 我会得到1,3,5,6

我如何获得1、3、4、5、6?

UNION的默认值为DISTINCT

SELECT "from" FROM tableX 
UNION
SELECT "to" FROM tableX;
SELECT DISTINCT `fr_om` FROM `table`
UNION
SELECT DISTINCT `to` FROM `table` WHERE `to` NOT IN (SELECT DISTINCT `fr_om` FROM table)

已更新 :您可以仅使用UNION从结果集中删除重复项。

SELECT DISTINCT `fr_om` FROM `table`
UNION
SELECT DISTINCT `to` FROM `table` 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM