如何在 Sql Server 中使用 LIKE 子句和 IN 子句?

3

我希望能够同时使用LIKE子句和IN子句。 例如:目前我的查询语句是 -

SELECT 
   * 
FROM 
   [USER_DETAILS] 
WHERE 
   [NAME] LIKE 'Dev%' OR 
   [NAME] LIKE 'Deb%' OR 
   ......
   ......

我该如何使用IN子句来实现这个目标?有人可以帮忙吗? :)

3
我可能错了,但我认为那是不可能的。 - NullUserException
你可以研究全文搜索。例如,http://www.databasejournal.com/features/mssql/article.php/3441981/Full-Text-Search-on-SQL-2000-Part-1.htm。它并没有回答你的问题,但可能会对你有所帮助。 - Tobiasopdenbrouw
2个回答

1
将参数值放入表格中,然后使用单个JOIN条件,例如:
SELECT * 
  FROM [USER_DETAILS] AS U1
       INNER JOIN Params AS P1
          ON U1.[NAME] LIKE P1.param + '%';

0
同意NullUserException的观点 - 没有这样的语法。 “in”是谓词相等的“语法糖”。对于其他操作,如>、<,没有类似的模拟,因此应该使用OR。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接