是否有更改以簡化此數據庫查詢(必須每次請求運行多次)可能使用IN子句或其他內容?數據庫查詢簡化了多行的WHERE子句
SELECT `id`
FROM `tablename`
WHERE `columnname1` = "longer-value" OR
`columnname2` = "longer-value" OR
`columnname3` = "longer-value" OR
`columnname4` = "longer-value" OR
`columnname5` = "longer-value" OR
`columnname6` = "longer-value" OR
`columnname7` = "longer-value" OR
`columnname8` = "longer-value" OR
`columnname9` = "longer-value" OR
`columnname10` = "longer-value"
請注意,此查詢檢查10個不同列的值。
你忘了規範化數據庫。 – 2012-02-13 22:10:51
'(每個請求必須運行多次)'這是一面紅旗。你能減少查詢的數量嗎?也許有'JOIN'? – 2012-02-13 22:12:59
有沒有很好的理由,你不能把它分解成兩個規格化的表格?在全表掃描比標準查找快得多的情況下,我一直處於這種情況......但很少見。 – gahooa 2012-02-13 22:14:00