Mysql 执行UNION select获取数据来自哪个表

Mysql 执行UNION select获取数据来自哪个表,mysql,sql,Mysql,Sql,我有3个表,它们的结构完全相同,如: id name_col 我有一个疑问: $query = mysql_query("SELECT * FROM tbl_1 UNION SELECT * FROM tbl_2 UNION SELECT * FROM tbl_3"); 现在: 您还可以添加一个自定义列,指定它所属的表的名称,例如 SELECT id, name_col, 'table1' tableName FROM table1 UNION SELECT id, name_c

我有3个表,它们的结构完全相同,如:

id       name_col
我有一个疑问:

$query = mysql_query("SELECT * FROM tbl_1 UNION SELECT * FROM tbl_2 UNION SELECT * FROM tbl_3");
现在:


您还可以添加一个自定义列,指定它所属的表的名称,例如

SELECT id, name_col, 'table1' tableName FROM table1
UNION
SELECT id, name_col, 'table2' tableName FROM table2
UNION
SELECT id, name_col, 'table3' tableName FROM table3

您还可以添加一个自定义列,指定它所属的表的名称,例如

SELECT id, name_col, 'table1' tableName FROM table1
UNION
SELECT id, name_col, 'table2' tableName FROM table2
UNION
SELECT id, name_col, 'table3' tableName FROM table3

您可以将常量字段添加到子查询中,以便对其进行索引,如下所示:

SQL:

该额外字段的列名在子查询中必须一致

PHP:


您可以将常量字段添加到子查询中,以便对其进行索引,如下所示:

SQL:

该额外字段的列名在子查询中必须一致

PHP:


请在mysql_fetch_array()中添加一个示例?谢谢这方面有很多例子,请您也在mysql_fetch_array()中添加一个例子好吗?谢谢这方面有很多例子
SELECT *, 1 AS tbl ROM tbl_1 
UNION
SELECT *, 2 AS tbl FROM tbl_2 
UNION
SELECT *, 3 AS tbl FROM tbl_3
while($row = mysql_fetch_array($query)){
    names .= $row['name_col'];
    switch ($row['tbl']){
         case 1: // tbl_1
         break;
         // etc.
    }
}