gpt4 book ai didi

sql-server - 如何在需要使用通配符的列中搜索多个值?

转载 作者:行者123 更新时间:2023-12-03 01:03:45 25 4
gpt4 key购买 nike

在 SQL Server 中,我需要在列中搜索多个值,但我没有确切的值,因此我还需要使用通配符。

我当前的查询如下所示:

SELECT * 
FROM table
WHERE fieldname in ( '%abc1234%',
'%cde456%',
'%efg8976%')

这不会返回任何结果,但如果我搜索任何一个单独的值,我就会找到它,所以我知道它们就在那里。缺少执行多个 OR 的操作(对于数百个值来说有点笨拙),有没有办法做到这一点?

我也有兴趣知道为什么这个查询不起作用,因为没有 % 的相同查询工作得很好(除了只捕获少数精确匹配的小问题)。

最佳答案

看看如何使用 Fulltext Index 。这应该可以更好地完成您的搜索,并使您的“OR”问题更容易启动:

SELECT * 
FROM table
WHERE CONTAINS(fieldname, '"abc1234" OR "cde456" OR "efg8976"')

另请参阅:

http://www.simple-talk.com/sql/learn-sql-server/full-text-indexing-workbench/

关于sql-server - 如何在需要使用通配符的列中搜索多个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10747996/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com