SQL:返回包含一个单词的记录,其中最后一个字母是除K以外的任何数字

时间:2019-04-05 07:22:21

标签: sql sql-server ssms wildcard

假设我有一个表,其中包含名为“查询”的列。我必须显示记录,其中此列中的字符串使用char而不是noloc。请注意,nolock可以跟在noloc后面或前面,也可以使用空格等。我只需要{noun}除)之前和之后的所有记录。有没有办法在SQL中做到这一点?

我尝试过:

noloc

,但这包括包含select * from table1 where Query LIKE '%noloc%' 的查询。我尝试了上述各种变化,例如在nolock之前和/或之后放置空格,但是没有一个满足所有条件。

2 个答案:

答案 0 :(得分:5)

您可以在where子句中同时使用这两种条件

select * from table1
where Query LIKE '%noloc%' and Query NOT LIKE '%nolock%'

答案 1 :(得分:3)

您想要任何东西+ noloc +任何一个字符,但k +任何东西。在这里:

select * from table1
where Query LIKE '%noloc[^k]%'