从多个MySQL表中选择相似的唯一数据行

时间:2011-12-07 13:49:07

标签: mysql

我有几个具有相似字段的表,例如,姓名和电子邮件地址:

TABLE Users (
   Name varchar(255),
   Email varchar(255),
   etc..
)

TABLE Clients (
  Name varchar(255),
  Email varchar(255),
  etc..
)

TABLE Administrators (
  Name varchar(255),
  Email varchar(255),
  etc..
)

我想获取所有姓名和电子邮件地址的列表,并能够跨表格过滤掉重复的地址(即客户和用户可能都有相同的电子邮件地址)

1 个答案:

答案 0 :(得分:2)

好吧,你可以试试:

SELECT DISTINCT Name, Email FROM
  (SELECT Name, Email FROM Users
   UNION
   SELECT Name, Email FROM Clients
   UNION
   SELECT Name, Email FROM Administrators) p