Как выбрать из Varchar, где `Value` не является частью группы - PullRequest
1 голос
/ 30 сентября 2008

Я пытаюсь сделать это

SELECT `Name`,`Value` FROM `Constants` 
WHERE `Name` NOT IN ('Do not get this one'|'or this one');

Но, похоже, это не работает.

Как получить все значения, кроме нескольких, без этого:

SELECT `Name`,`Value` FROM `Constants` 
WHERE `Name` != 'Do not get this one' 
AND `Name` != 'or this one'

Первый работает со значениями int, но не работает с varchar, есть ли синтаксис, подобный первому, который работает как второй запрос?

Ответы [ 3 ]

6 голосов
/ 30 сентября 2008

Вы должны поместить константы в таблицу, а затем выполнить оператор выбора из этой таблицы. Если вам абсолютно не нужен постоянный стол, вы можете использовать временную таблицу. И если вы не хотите этого делать, вы можете использовать синтаксис IN:

NOT IN («один», «два»)

3 голосов
/ 30 сентября 2008

Это IN('foo', 'bar') с запятой, а не с трубкой.

1 голос
/ 30 сентября 2008

В синтаксисе IN используются разделенные запятыми списки

SELECT `Name`,`Value` FROM `Constants` WHERE `Name` NOT IN ('Do not get this one','or this one');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...