如何将 "NOT LIKE" 用于 SQL 中的列值

How to use "NOT LIKE" for a column values in SQL

所以我有一个 table 这样的:

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 运算符来排除 X 值所在的行在 Y 列中。

但是,我不知道怎么做。不可能只写下 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,' %')