PG中索引创建支持case when的写法吗??
本问题来自云栖社区【PostgreSQL技术进阶社群】。https://yq.aliyun.com/articles/690084 点击链接欢迎加入社区大社群。
表达式索引
postgres=# create index idx_test_23 on test using btree ((case when id<1000 then 1 else 2 end));
CREATE INDEX
postgres=# explain select * from test where (case when id<1000 then 1 else 2 end) =1;
QUERY PLAN
Index Scan using idx_test_23 on test (cost=0.56..174048.15 rows=195616 width=45)
Index Cond: (CASE WHEN (id < 1000) THEN 1 ELSE 2 END = 1)
(2 rows)
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。