2010-07-20 69 views
1

我有一個在前兩列編制索引的表。列A稱爲「目錄」,列B稱爲「名稱」。針對索引的MySQL SELECT語句

是否有我可以用來返回適當的行的select語句的簡短語法?

例子:

我可以

SELECT * FROM table WHERE indexname = '/dir/sub-dir/page.html' 

或者我必須

SELECT * FROM table WHERE directory = '/dir/sub-dir/' AND name = 'page.html' 

如果我可以使用的第一個例子,什麼是WHERE子句是什麼樣子? 謝謝。

回答

1

如果您有針對兩列定義的索引,則第二個用法是正確的。在SQL中,只能針對表,視圖或表值中的用戶定義函數(我認爲MySQL還沒有)中的列定義謂詞。您不能選擇索引,但是當包含兩列時,優化器將知道使用適當的索引。

+0

感謝戴夫的快速回復,確認和解釋。它有助於。 – 2010-07-20 13:01:25