【发布时间】:2017-12-20 10:02:39
【问题描述】:
使用 Postgres SQL - 我有关于索引以提高效率的一般性问题。
应该为下一个查询创建哪些最佳索引?
SELECT task_name, user_name
FROM tasks
WHERE (user_id = 1 OR task_type = 'SOME_TYPE') and is_deleted = FALSE
GROUP BY task_name, user_name
WHERE 子句中的列(user_id、task_type、is_deleted)是否需要与 GROUP BY(task_name、user_name)中的列位于同一索引中?
OR 运算符是否意味着列需要位于不同的索引上?
据我所知,索引布尔列通常不是一个好主意,因为弊大于利。布尔列“is_deleted”是否需要与 WHERE 子句中的列一起位于索引中?
非常感谢您帮助我理解它。
【问题讨论】:
标签: sql postgresql indexing