添加列以说明并集结果来自哪个表

  • 本文关键字:结果 说明 添加 mysql union
  • 更新时间 :
  • 英文 :


当我使用 UNION 命令搜索多个表时,如何选择每个结果来自哪个表?

例如,如果两个表都有结果,我如何添加一列来说明(或区分)它是来自表 A 还是表 B。

试试这个,只需为表的名称添加一个虚拟列

SELECT *
FROM
(
    SELECT *, 'tableA' as tableName FROM tableA
    UNION ALL
    SELECT *, 'tableB' as tableName FROM tableB
    UNION ALL
    SELECT *, 'tableC' as tableName FROM tableC
) s
WHERE   colName = 'hello'

最新更新