好的,所以我有兩個表,一個news
表和一個users
表。他們建立如下:MySQL INNER JOIN與不同的列名稱
消息:
id title user_id contents
用戶:
id username password
當我運行此查詢:
SELECT news.title, users.username, news.contents FROM news INNER JOIN users ON news.user_id=users.id WHERE news.id=:id
我可以只使用訪問用戶ID $query['id']
。所以看起來join是使用table2中的列名,儘管我希望它們將它映射到table1的列名。所以即使列表在用戶表中被稱爲id
,我想在user_id
下訪問它,因爲我在JOIN
查詢中指定了該列。
我需要這個,因爲如果我需要從table1的id
,他們都將被映射到名爲id
的列,我只能夠獲得users表的id
。
那麼有沒有辦法做到這一點?訪問table1中列的名稱下的列?
的USER_ID這樣,你可以把它叫做'選擇table2.whatever AS name_you_want'? – 2014-10-27 19:02:30
@Marc B所以這意味着我需要使用這個,對吧?: 'SELECT news.title,users.id AS user_id,users.username,news.contents FROM news INNER JOIN users on news.user_id = users.id WHERE news.id =:id' – Qub1 2014-10-27 19:04:41