【发布时间】:2011-03-05 22:29:21
【问题描述】:
我有大量的短语(大约几百万),每个不到六七个字,大部分不到五个,我想看看它们是否“短语匹配”。这是一个搜索引擎营销术语 - 本质上,如果 A 包含在 B 中,则 A 短语匹配 B。现在,它们存储在 db (postgres) 中,我正在对正则表达式执行连接(参见 this question)。即使在尝试了所有基本的优化技巧(索引等)并尝试了所提供的建议之后,它的运行速度也慢得令人难以置信。
有没有更简单的方法来做到这一点?我不反对非数据库解决方案。是否有任何理由认为正则表达式过于矫枉过正并且比其他解决方案花费的时间更长?
【问题讨论】:
-
您能更详细地解释一下“A 包含在 B 中”是什么意思吗?您是指确切的字符串还是单个单词?
-
我刚刚查看了您的链接帖子。您在 A 中获得了多少条记录,在 B 中获得了多少条记录?
-
您得到想要的答案了吗?如果是这样,你能接受吗?如果没有,你能澄清一下你还在寻找什么吗?通常,您提供的信息越多,就越有可能有人可以帮助您。
标签: sql