2013-08-26 114 views
0

我有一個SQL查詢像這樣的:MYSQL選擇表和列名

SELECT T1.id, T2.user 
FROM T1 
INNER JOIN T2 ON T1.user_id = T2.id 

的結果是一樣的東西id | user

我想知道是否有一種方法可以在不改變查詢的情況下(例如使用concat)在列名之前獲得與表名相同的結果(類似T1.id | T2.user)?

謝謝!

編輯:所以我找到了我的問題的答案。我使用PHP函數mysqli_result::fetch_field_direct,它允許我爲每個字段獲取元數據。

謝謝你們所有的答案!

+0

我認爲,只要你在php代碼中寫入命令ex,它就不會返回SQL返回值。 '$ id = $ row ['id']; $ name = $ row ['user_id'];'或者如果OBJ Oriented:'$ name = $ obj-> id; $ id = $ obj-> user_id;' – JohnnyJS

+0

你用什麼語言寫? – JohnnyJS

回答

1

你知道你正在使用的表,那麼你就可以在查詢中添加自己的名字:

SELECT 
    CONCAT('T1.', T1.id) as id, 
    CONCAT('T2.', T2.user) as user, 
FROM T1 
INNER JOIN T2 ON T1.user_id = T2.id 
0

據我理解你的問題,你需要使用一個別名:

Select t1.id as UserID, t2.user as Username 
From t1 inner join t2 on t1.user_id = t2.id