如何从Varchar中选择“Value”不属于组的位置

时间:2008-09-29 20:56:53

标签: mysql

我正在尝试这样做

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 个答案:

答案 0 :(得分:6)

您应该将常量放在表中,然后从该表中执行select语句。如果你绝对不想要永久表,你可以使用临时表。如果不想这样做,可以使用IN语法:

NOT IN('one','two')

答案 1 :(得分:3)

它是IN('foo', 'bar'),带逗号,而不是管道。

答案 2 :(得分:1)

IN语法使用逗号分隔列表

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