2017-10-13 74 views
0

我可以MySql的未知列在where子句,但柱確實存在

select a_column from table_1 

,並得到結果,但是當我

select * from table_2 where table_2.a_column = table_1.a_column 

我得到一個錯誤

unknown column table_1.a_column in where clause 

如果我做

select * from table_1 where table_1.a_column = table_2.a_column 

我得到

unknown a_column table_2.a_column in where clause 

列做絕存在,他們絕對有重疊的數據。這是爲什麼發生?我試過尋找答案,因爲我認爲這會很常見,但我只能找到與錯別字有關的答案,而不是這種情況。

+0

'或在兩個表上選擇。 – tadman

回答

2

您需要使用加入,這個概念仍然是巨大的,你看看在它here.

下面的例子只是演示了一個簡單連接這將成爲解決您的只有現狀。您需要在我上面發佈的鏈接中查看更多內容。

此外,小心而

table_2.column = TABLE.COLUMN,列值必須在兩個 匹配你需要表達這種'JOIN表

select * from table_2 
join table2 on table1 
where table_2.column = table.column 
相關問題