Mar*_*eri 3 sql-server search where-clause
我一直在寻找一段时间,遗憾的是似乎找不到解决方案.
基本上我有一个逗号分隔的关键字字符串,我已经使用一个函数转换成一个列表,该函数接受一个@String并返回一个TABLE(Value varchar(30)).到现在为止还挺好.
我现在可以在where子句中使用此列表,如下所示:
SELECT project.*
FROM Projects project
WHERE project.title IN (SELECT * FROM dbo.ParamsToList('.net,test'))
Run Code Online (Sandbox Code Playgroud)
这与project.title完全(等于)任何一个关键字(.net或test)相匹配.
我需要的是匹配标题是LIKE'%'+任意关键字+'%'.
任何帮助将不胜感激.
谢谢
一种方法是这样的:
SELECT project.*
FROM Projects project
WHERE EXISTS
(
SELECT * FROM dbo.ParamsToList('.net,test') x
WHERE project.title LIKE '%' + x.value + '%'
)
Run Code Online (Sandbox Code Playgroud)
如果项目匹配params列表中的多个值,则此方法将意味着您不会多次返回相同的项目.
| 归档时间: |
|
| 查看次数: |
4789 次 |
| 最近记录: |