我需要搜索具有预定义模式的句子,并在匹配时获得结果。假设我在表格中有一百万个预定义模式的记录,如* b *,ab * cd * ....如何实现这一点,是否有任何数据库引擎可以搜索如下?
我的判决是:“回家” 表格有2列:ID,PATTERN
表有2行数据:
1,c * h
2,b * h *(您可以认为不同格式的b [a-z] * h [a-z] *)
所以当我从表中查询“回家”时,它应该返回id = 1,因为它类似于c * h * pattern。
感谢任何线索或帮助 最诚挚的问候
答案 0 :(得分:2)
我不知道有效地执行此操作的数据库系统。但是,在SQL中实现它很容易:
select t.*
from table t
where 'come home' like t.pattern;
对于like
,您需要使用正确的通配符,因此在您的特定示例中:
select t.*
from table t
where 'come home' like replace(t.pattern, '*', '%');