我想知道是否可以将 2 个单独表中的 2 列别名为相同名称。
例如,我想将电子邮件表与用户表和管理表连接起来,并将各自的“名称”列组合在同一列中。
Email Table: Email ID | Email Address
User Table: Username| Email ID
Admin Table: Username| Email ID
Result:
Username | Email Address
最佳答案
我相信这就是您想要得到的:
SELECT a.Username, a.Email_ID, b.Email_Address
FROM
(SELECT Username, Email_ID FROM User
UNION ALL
SELECT Username, Email_ID FROM Admin) a
INNER JOIN Email b ON b.Email_ID = a.Email_ID
这将堆叠User
和Admin
表,然后JOIN
Email
表。
请注意,如果存在重复项并且您想删除它们,则应使用 UNION
而不是 UNION ALL
。
关于mysql - 将 2 列别名为相同名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13595634/