一尘不染

Transact-SQL:如何标记字符串?

sql

我希望能够对文本框中的输入字符串进行标记化以进行查询。示例:用户在文本框中输入“ abc xyz 123”。我想做这个:

SELECT * FROM database WHERE Name contains "abc" AND "xyz" AND "123"
-- as opposed to containing "abc xyz 123"
-- please ignore my sql syntax, I am an absolute beginner

谢谢。


阅读 130

收藏
2021-03-10

共1个答案

一尘不染

使用一个字符串拆分函数,您可能会得到如下所示的内容:

SELECT t.*
FROM atable t
  INNER JOIN dbo.Split(@UserInput, ' ') s ON t.Name LIKE '%' + s.Data + '%'
2021-03-10