2011-12-05 96 views
0

我想從我的SELECT語句中選擇1列,但隨後離開其餘部分是這樣:Mysql的選擇1列

SELECT tbl_user.reference AS "reference", * FROM tbl_user JOIN tbl_details ON..... 

這可能嗎?

回答

2

是的。您可以使用雙引號來創建列別名。您可以在SELECT列表中選擇一列兩次(或更多)。

嘗試這樣的事情,在這裏你可以給每一個「參考」列其自己的別名:

SELECT u.reference AS UserReference, 
     d.reference as DetailsReference, 
     u.id, /*etc etc*/ 
FROM tbl_user AS U 
JOIN tblDetails AS D ON ....   

你提到在你想從每個表中的所有列的意見,同時能夠在區分參考列(可能在兩個表中都被命名爲相同)。建議NOT using SELECT *,因爲它是一種反模式。在SELECT語句中指定列列表是最有益的,並且可以幫助查詢引擎不必查看每個表上的列列表。

0

如果你只想一列,這將工作:

SELECT SELECT tbl_user.username AS "username" FROM tbl_user JOIN tbl_details on tbl_user.key LIKE tbl_details.key 

什麼你的意思做「但隨後離開其餘部分是」?

+0

我剛剛編輯的問題更真實,更有意義。我需要兩個表中的所有列,但兩個表都有一個列引用,它具有不同的值,而在我的輸出中顯示的列是不正確的。我的意思是假休息,因爲我不想爲所有列寫tbl_user.name,tbl_details.id等,因爲每個表中有很多列 – puks1978