我必须选择包含特定文字的所有字段,并以"
,'
,)
或空格字符结尾,或者此文本放在字符串的末尾。< / p>
所以,我需要这样的东西:
select *
from MyTable
Where Column1 like '%' + @text + '["'') ]%'
此查询正常工作,直到文本未放在Column1
的末尾。
答案 0 :(得分:5)
您可以使用
Where Column1 + '"' like '%' + @text + '["'') ]%'
答案 1 :(得分:0)
这应该更好,更快:
SELECT * FROM MyTable
WHERE
( (RIGHT(Column1,1) IN (' ', '"', '''', ')'))
AND
(SUBSTRING(Column1, LENGTH(@text)-1, LENGTH(@text))=@text)
)
OR ( RIGHT(Column1, LENGTH(@text))=@text )
答案 2 :(得分:0)
为什么不试试OR?
Where Column1 like '%' + @text + '["'') ]%'
or
Column1 like '%' + @text + '["'') ]'
或者我是否误解了这个要求?你的问题有点难以理解。
答案 3 :(得分:0)
SELECT *
FROM MyTable
WHERE Column1 LIKE '%' + @text + '%["'') ]'
OR Column1 LIKE '%' + @text