首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >日期类型的模糊日期搜索/优化相似

日期类型的模糊日期搜索/优化相似
EN

Stack Overflow用户
提问于 2018-09-25 20:00:54
回答 1查看 133关注 0票数 0

嗯,我会非常直截了当--在我的应用程序中实现生日搜索时,我遇到了巨大的性能下降--我使用的是LIKE,这不是左锚式表达式(因为日期列格式看起来像YYYY DD),所以我不得不这么做(这个月--这一天),这个查询不能使用默认索引。

我发现了pg-trgm,这实际上非常棒,但是gist/gin_trgm_ops操作符不支持“日期”类型。您可能会说,如果我使用LIKE (我必须使用::varchar ),那么将日期作为列类型是没有意义的,但我希望在数据库中设置严格的内容,所以我请求您提供建议--是否有任何方法可以更快地处理日期,或者,如果有其他选择,可以在没有可怕的查询时间的情况下完成我的任务(进行生日搜索)?

EN

回答 1

Stack Overflow用户

发布于 2018-09-25 20:06:14

试试这样的索引:

代码语言:javascript
复制
create index idx_name on your_table(extract(month from birth_day), extract(day from birth_day));

然后查询,例如:

代码语言:javascript
复制
select * from your_table
where
extract(month from birth_day) = 2 and extract(day from birth_day) = 20
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52505867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档