2

鉴于此脚本:

DECLARE @token NVARCHAR(max)
SET @token = 'mytexttosearchfor'
SELECT * FROM myTable WHERE myField1 LIKE '%@token%'

不起作用。在这种情况下使用内容@token 的正确方法是什么?

4

3 回答 3

3

您可以使用字符串连接,如下所示:

SELECT * FROM myTable WHERE myField1 LIKE '%'+@token+'%'

您的方法未按预期工作的原因是变量未在字符串文字中解析:'%@token%'表示由%, @, t, o, k, e, n,%字符组成的字符串 - 不执行标记替换。

于 2013-10-04T01:04:07.530 回答
1

尝试这样的事情

DECLARE @token NVARCHAR(max)
SET @token = 'mytexttosearchfor'
SELECT * FROM myTable WHERE myField1 LIKE '%' + @token + '%'
于 2013-10-04T01:04:23.313 回答
1

你应该有

SELECT * FROM myTable WHERE myField1 LIKE '%'+@token+'%'
于 2013-10-04T01:04:36.840 回答