是否有更改以简化此数据库查询(必须每次请求运行多次)可能使用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