postgre如何在SQL中对列值使用"NOT LIKE"



所以我有一个这样的表:

X.        Y.
34560     eudhkri 34560 abc
26558     hsyrb 26558 ax
3666      dhurb 3666 yzhdj
3666      dhfhjf 366688 avh
233       abc 233 hdhsijej

由于Y列中的字符是可变的(意味着它们有不同数量的字母(,我想我可以使用NOT LIKE运算符来排除Y列中X值所在的行。

然而,我不知道怎么做。不可能把X的每个值都写下来。此外,我专门写了第4行,向您表明我不能排除这些数据,因为数字不相同,所以使用%可能会造成一些麻烦。

您可以使用正则表达式:

WHERE y ~ ('m' || x || 'M')

m表示单词的开始,M表示单词的结束。

如果你想使用类似的运算符,你可以尝试这种方式

select *
from my_table 
where y NOT like concat('%',x,'%')

select *
from my_table 
where y NOT like concat('% ', x,' %')

相关内容

  • 没有找到相关文章

最新更新