0
我正在做一个来自两个不同表的联合查询,然后是fetch_array
循环查询我想知道从哪两个表中我实际上抓住了,反正没有添加标志放入表格的结构中。 ?如何知道fetch_array里面的表名
我正在做一个来自两个不同表的联合查询,然后是fetch_array
循环查询我想知道从哪两个表中我实际上抓住了,反正没有添加标志放入表格的结构中。 ?如何知道fetch_array里面的表名
的标志并不需要在表中,但可以轻松地查询:
SELECT 'table1' as t, ... FROM table1
UNION
SELECT 'table2' as t, ... FROM table2
...
echo $row['t'];
您没有选择从表中的字段,你可以简单地“选择一个字符串文字“也是如此。
如果你有两个表中相同名称的列,您可以使用作为
SELECT table1.col1 as col1, table1.col2, table1.col3 FROM table1
UNION
SELECT table2.col1 as col4, table1.col5 FROM table2
然后你做$数据= FETCH_ASSOC($ Q),你将有
$data["col1"] // table1.col1
$data["col2"] // table1.col2
-----------------------------
$data["col4"] //table2.col1
然后找出它我会去'while($ m = mysql_fetch_array($ r)){if(isset($ m ['table1']){} else {}}'? – lbennet
真棒,谢谢。 – lbennet
只需使用'SELECT'table1' t ...',那么这个值就可以作为't'的列。 – deceze