我遇到了一个随着数据库的增长而变得非常缓慢的查询的问题。
问题似乎是排序,这取决于三个条件 - 重要性,紧迫性和时间戳。
目前使用的查询很简单 ORDER BY紧急DESC,重要的DESC,date_published DESC
字段是紧急和重要的布尔值,而date_published是一个整数(UNIX时间戳)。
答案 0 :(得分:4)
为您定期排序的列创建索引。您甚至可以设置复合索引。
答案 1 :(得分:1)
CREATE INDEX foo ON table_name (urgent DESC, important DESC, date_published DESC);