我无法弄清楚为什么 NOT LIKE 运算符无法正常工作。我在数据库中有 34 个以 NT 开头的sample_name
,但它只删除了一些,而不是其他。当我尝试使用LIKE ('NT%)
搜索时,它会搜索所有内容。以下是我所拥有的。
WHERE
full.full_id IN ('272', '273')
OR full.full_id IN ('567', '686')
AND random.sample_name NOT LIKE ('NT%')
您在IN
列表中有一个无关,
,并且您缺少 NOT LIKE 语句末尾的'
。该语句应如下所示:
WHERE full.full_id IN ('272', '273', '567', '686')
AND random.sample_name NOT LIKE ('NT%')
您发布的代码中有几个错误。 我猜你打算:
WHERE full.full_id IN (272, 273) AND
random.sample_name NOT LIKE 'NT%'
笔记:
IN
列表中没有逗号。- 终止
LIKE
模式上的单引号 - 如果列是数字,则不要对常量使用单引号(仅对字符串和日期常量使用单引号)。
LIKE
模式周围不需要括号(尽管这不是语法问题)