SQL UNION,检查结果是第一个还是第二个查询

时间:2015-10-01 12:15:00

标签: php mysql

我有一个SQL查询,如:

SELECT * FROM database1.table WHERE "_CONDITIONS" 
UNION 
SELECT * FROM database2.table WHERE "_CONDITIONS"

通过此查询,我从tabledatabase1中的database2检索数据。每个数据库都Table完全相同。

我将结果放入php变量(大数组),但我怎么知道结果是来自database1还是database2?我怎样才能在SQL中添加一些内容呢?

1 个答案:

答案 0 :(得分:7)

除非您要删除重复项,否则请勿使用union。使用union all。然后只需添加一列:

SELECT t.*, 1 as which FROM database1.table t WHERE "_CONDITIONS"
UNION ALL
SELECT t.*, 2 as which FROM database2.table t WHERE "_CONDITIONS";