我有一个包含11000个关键字的SQL表。
我想要一个查询,可以找到包含某个字母的字段。
因此,如果我包含"a“和"b”,查询将选择字段中某处包含字母"a“和字母"b”的所有字段。
发布于 2009-10-16 19:04:41
select *
from table
where keyword like '%a%'
and keyword like '%b%'ps这将是非常慢的。您可能希望研究全文索引解决方案。
发布于 2009-10-16 20:12:37
我会使用通配符搜索。
where <field> like '%[ab]%'它不是正则表达式,但它做得很好。您还可以做一些变体,如<field> like 'sim[oa]ns' --它将匹配simons和simans……
根据您的排序规则,您可能必须包含案例数据,也可能不包含,like '%[aAbB]%'
正如在其他地方提到的,准备好等待,因为当您执行包含搜索时,索引是不可能的。
发布于 2009-10-16 19:06:16
尝尝这个
Select * From Table
Where field like '%' + ltrValue1 + '%'
And field like '%' + ltrValue2 + '%'
... etc.并为表扫描做好准备,因为此功能不能使用任何现有索引
https://stackoverflow.com/questions/1579816
复制相似问题