Я не могу понять, почему операторы NOT LIKE работают неправильно. У меня есть 34 sample_name
в базе данных, которые начинаются с NT, но это только избавляет от некоторых, а не от других. Когда я пытаюсь выполнить поиск с помощью 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%')
OR
вызывает здесь некоторую проблему, потому что, если я full_id
этот оператор и помещаю все full_id
в один оператор, он работает. Любое понимание того, почему это происходит?
У вас есть несколько ошибок в коде, который вы опубликовали. Я собираюсь предположить, что вы намерены:
WHERE full.full_id IN (272, 273) AND
random.sample_name NOT LIKE 'NT%'
Заметки:
IN
.LIKE
LIKE
(хотя это не проблема синтаксиса)
NOT LIKE 'NT%'