执行PostgreSQL查询的性能/优化方式。在哪里或哪里?

时间:2015-12-21 20:25:03

标签: sql performance postgresql

我有一个简单的查询,它选择表中与提供的id标准匹配的所有记录。

SELECT * FROM table WHERE id = x or id = y or id = z;

它工作正常,但我有超过50个ID需要包含在where子句中。因此,在性能方面,做一个WHERE IN子句而不是OR会更好吗?还是有更好的方法来执行这个我完全忽略的?

谢谢

1 个答案:

答案 0 :(得分:1)

可以使用EXPLAIN (analyze, buffers)检查PostrgeSQL行为。 这是了解数据库正在做什么的唯一方法。

如果您的列表变大,您可以尝试使用VALUES结构加入。
请检查以下内容: