当前位置:  开发笔记 > 数据库 > 正文

有什么方法可以提高PostgreSQL 8中正则表达式查询的性能?

如何解决《有什么方法可以提高PostgreSQL8中正则表达式查询的性能?》经验,为你挑选了1个好方法。

我正在character varying(256)PostgreSQL 8.3.3中的类型列上执行正则表达式匹配.该列目前没有索引.如果可以的话,我想提高这个查询的性能.

添加索引会有帮助吗?还有其他我可以尝试帮助提高性能的东西吗?



1> Brian Campbe..:

您无法创建将加速任何通用正则表达式的索引; 但是,如果您正在匹配一个或有限数量的正则表达式,则有几个选项.

正如Paul Tomblin所提到的,您可以使用额外的一列或多列来指示给定行是否与正则表达式或正则表达式匹配.该列可以编制索引,并有效查询.

如果你想更进一步,本文讨论了一种有趣的声音技术,用于对正则表达式进行索引,包括在正则表达式中查找长子串并根据文本中是否存在这些子索引来生成候选匹配.这会过滤掉实际需要检查正则表达式的行数.您可以使用GiST索引来实现这一点,尽管这将是一项非常重要的工作.

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有