从多列中选择不同的值

时间:2015-04-17 18:27:53

标签: sql

我有一个mail表,其中有四列:idusertouserfrommessage。我想收到一个用户列表,这些用户已向用户“example”发送邮件,我想将其与用户“example”发送邮件的用户列表一起加入。但是,我不希望在此列表中有任何重复的用户名。

我该怎么做?我确定它与SELECT DISTINCTINNER JOIN有关,但我不确定我会怎么做。

1 个答案:

答案 0 :(得分:1)

我会选择UNION。您的里程可能因您的RDBMS而异。

SELECT userto AS listuser
FROM mail
WHERE userfrom = 'example'
UNION
SELECT userfrom AS listuser
FROM mail
WHERE userto = 'example';

编辑: 您不需要在那里使用SELECT DISTINCTUNION将从每个子查询中以及查询之间删除重复。