[英]SQL: Return records containing a word where the last letter is anything except K
假设我有一个包含名为“Query”的列的表。 我必须显示此列中的字符串使用noloc
而不是nolock
。 请注意, noloc
可以跟在/之前是)
或空格等。我只需要所有在noloc
之前和之后都有任何内容的记录,除了 nolock。 有没有办法在 SQL 中做到这一点?
我试过:
select * from table1
where Query LIKE '%noloc%'
但这包括包含nolock
查询。 我尝试了上述的变体,例如在%
之前和/或之后放置空间,但没有一个符合所有标准。
您可以在 where 子句中使用这两个条件
select * from table1
where Query LIKE '%noloc%' and Query NOT LIKE '%nolock%'
你想要任何东西 + noloc + 任何一个字符,但 k + 任何东西。 这里:
select * from table1
where Query LIKE '%noloc[^k]%'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.