我得到一個MySQL的#1054 - 在未知列'foo.column1 'where子句'
#1054 - 未知列 'foo2.column2' 在 'where子句'
爲以下查詢。
CREATE TABLE foo AS
SELECT * FROM foo1
WHERE EXISTS
(SELECT * FROM foo1
WHERE foo1.column1= foo2.column2)
列foo2.column2的存在,因爲我可以通過其他查詢訪問它。
我得到一個MySQL的#1054 - 在未知列'foo.column1 'where子句'
#1054 - 未知列 'foo2.column2' 在 'where子句'
爲以下查詢。
CREATE TABLE foo AS
SELECT * FROM foo1
WHERE EXISTS
(SELECT * FROM foo1
WHERE foo1.column1= foo2.column2)
列foo2.column2的存在,因爲我可以通過其他查詢訪問它。
您在子查詢中再次寫入了foo1而不是foo2。
此外,我會建議使用連接查詢,而不是像下面的SELECT
。
CREATE TABLE foo AS
SELECT * FROM foo1 JOIN foo2 ON foo1.column1= foo2.column2
你didn't provide foo2 table in FROM Clause of your query
。在最內層的子查詢位置應該是foo2 instead of foo1
。
CREATE TABLE foo AS
SELECT * FROM foo1
WHERE EXISTS
(SELECT * FROM foo2
WHERE foo1.column1= foo2.column2)
你是不是要在子選擇中寫'from foo2'? – 2015-01-21 10:19:58
您不要在任何FROM子句中聲明foo2。 – 2015-01-21 10:20:09