2012-09-12 50 views
0
SELECT T1_C1,...,T1_C100, T2_C1,T2_C2 FROM T1 INNER JOIN T2 on T1.index_T1 = T2.index_T2 

如上所述,我試圖從內部對我用下面內加入對指數 - 未知列

CREATE INDEX index_T1 on T1 (T1_PID) 
CREATE INDEX index_T2 on T2 (T2_PID) 

的代碼,我不斷收到未知列「T1取得的指標兩個表加入。 indexT1' 。如果我刪除表前綴,我會得到相同的結果。我正在努力尋找正確語法的工作示例。我需要首先適用於桌子有沒有特別的待遇?

回答

1

你不需要明確提及索引的名稱。

索引名稱只是您維護索引的標識符(比如刪除索引)。而且mysql自動使用索引,根據哪些列參與查詢以及哪些列以及如何被索引覆蓋。

所以只要指定列名:

INNER JOIN T2 on T1.t1_pid = T2.t2_pid 

PS:對於這類查詢你最有可能不需要索引T1

+0

妖獸,作品一種享受! – Yoda