2014-08-30 103 views
1

我下面的查詢shoqing一個非常奇怪的錯誤:內連接問題mysql的

說法是正確的

SELECT 
users.age, 
users.firstname, 
users.lastname, 
users.`gender`, 
users.username, 
users.`password`, 
users.id_user_type, 
gender.id 
FROM 
user_types 
INNER JOIN users ON `gender`.id = users.gender 

性別也有ID,性別爲兩列

錯誤我是另一個表越來越

[SQL]SELECT 
users.age, 
users.firstname, 
users.lastname, 
users.`gender`, 
users.username, 
users.`password`, 
users.id_user_type, 
gender.id 
FROM 
user_types 
INNER JOIN users ON `gender`.id = users.gender 

[Err] 1054 - Unknown column 'gender.id' in 'on clause' 

回答

0

您沒有使用gender表中的查詢但是usersuser_types。無論哪種變化表user_types性別或使用正確的表的別名

SELECT 
    users.age, 
    users.firstname, 
    users.lastname, 
    users.gender, 
    users.username, 
    users.password, 
    users.id_user_type, 
    gender.id 
FROM gender --use gender here 
INNER JOIN users 
ON gender.id = users.gender 

至於側面說明genderpassword所以他們不需要與反引號進行轉義也沒有保留關鍵字。我建議避免在不需要的地方使用反引號。

0

您是不是從表中選擇性別或加入?您需要將表格常規作爲這個之前的連接或從表格中的連接。否則,它如何知道從哪裏獲得性別數據?

Liam