Postgresql:按两个布尔值和一个时间戳列排序

时间:2011-11-25 13:03:10

标签: postgresql

我遇到了一个随着数据库的增长而变得非常缓慢的查询的问题。

问题似乎是排序,这取决于三个条件 - 重要性,紧迫性和时间戳。

目前使用的查询很简单 ORDER BY紧急DESC,重要的DESC,date_published DESC

字段是紧急和重要的布尔值,而date_published是一个整数(UNIX时间戳)。

2 个答案:

答案 0 :(得分:4)

为您定期排序的列创建索引。您甚至可以设置复合索引。

答案 1 :(得分:1)

CREATE INDEX foo ON table_name (urgent DESC, important DESC, date_published DESC);