我想從我的SELECT語句中選擇1列,但隨後離開其餘部分是這樣:Mysql的選擇1列
SELECT tbl_user.reference AS "reference", * FROM tbl_user JOIN tbl_details ON.....
這可能嗎?
我想從我的SELECT語句中選擇1列,但隨後離開其餘部分是這樣:Mysql的選擇1列
SELECT tbl_user.reference AS "reference", * FROM tbl_user JOIN tbl_details ON.....
這可能嗎?
是的。您可以使用雙引號來創建列別名。您可以在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語句中指定列列表是最有益的,並且可以幫助查詢引擎不必查看每個表上的列列表。
如果你只想一列,這將工作:
SELECT SELECT tbl_user.username AS "username" FROM tbl_user JOIN tbl_details on tbl_user.key LIKE tbl_details.key
什麼你的意思做「但隨後離開其餘部分是」?
我剛剛編輯的問題更真實,更有意義。我需要兩個表中的所有列,但兩個表都有一個列引用,它具有不同的值,而在我的輸出中顯示的列是不正確的。我的意思是假休息,因爲我不想爲所有列寫tbl_user.name,tbl_details.id等,因爲每個表中有很多列 – puks1978