【发布时间】:2014-09-24 13:02:18
【问题描述】:
我有以下SQL查询,但是查询很慢:(页面加载2秒)。
mysql_query("select * from table_test
WHERE ((owner = '$id' AND ownersecond = '0') OR ownersecond = '$id')
AND catogory = '1' AND type = '$car[id]' AND caseB = '0'
AND (timeback < TIMESTAMP(NOW()) OR timeback = '0000-00-00 00:00:00') ");
我想通过使用索引来改进 SQL 语句。我已经在该行上有一个索引:所有者和所有者第二。将索引放在 type、caseB 和 tieback 上是否有用?还是我越来越慢的sql?因为索引太多?
或者:将上面的 SQL 重写为更快的查询会更好吗?有没有人有更好的书面查询的建议。提前致谢。
【问题讨论】:
-
旁注:您可能对 SQL 注入持开放态度。您需要使用参数化语句,否则您的数据库将被自动化工具所拥有。