如何在Sql Server中使用IN caluse中的LIKE子句?
问题描述:
我想一起使用LIKE子句和IN子句。 e.g:目前我的查询 -如何在Sql Server中使用IN caluse中的LIKE子句?
SELECT
*
FROM
[USER_DETAILS]
WHERE
[NAME] LIKE 'Dev%' OR
[NAME] LIKE 'Deb%' OR
......
......
如何使用IN子句来实现这一目标? 有人可以帮忙吗? :)
答
将参数值放入表中,然后使用单个JOIN
条件,例如
SELECT *
FROM [USER_DETAILS] AS U1
INNER JOIN Params AS P1
ON U1.[NAME] LIKE P1.param + '%';
答
同意NullUserException - 没有这样的语法。 “In”是谓语相同的“语法糖”。没有类似的其他操作,如>,<,所以你应该使用OR。
我可能是错的,但我不认为这是可能的。 – NullUserException 2010-07-28 05:18:14
您可以查看全文搜索。例如http://www.databasejournal.com/features/mssql/article.php/3441981/Full-Text-Search-on-SQL-2000-Part-1.htm。它不回答你的问题,但可以帮助你。 – Tobiasopdenbrouw 2010-07-28 06:33:37