Sql server 2008 SQL在where子句中为2个不同的列指定2个不同的条件,两者都必须为true
如何编写sql查询以仅返回表中的行 例如,其中A列不为null,B列不为0 我的写作方式是:Sql server 2008 SQL在where子句中为2个不同的列指定2个不同的条件,两者都必须为true,sql-server-2008,tsql,where-clause,Sql Server 2008,Tsql,Where Clause,如何编写sql查询以仅返回表中的行 例如,其中A列不为null,B列不为0 我的写作方式是: where A is not null AND B !=0 但问题是,查询结果还消除了只有一个条件为真的行,例如a列为null,但b列不是0,反之亦然 我需要查询只删除(而不是返回)满足where子句两个条件的行 我只希望从查询中得到的结果是表中的行,其中A列不为NUll,B列不为=0,但我需要满足这两个条件,而不仅仅是其中一个条件如果我理解正确,您正在寻找: where A is not null
where A is not null AND B !=0
但问题是,查询结果还消除了只有一个条件为真的行,例如a列为null,但b列不是0,反之亦然
我需要查询只删除(而不是返回)满足where子句两个条件的行
我只希望从查询中得到的结果是表中的行,其中A列不为NUll,B列不为=0,但我需要满足这两个条件,而不仅仅是其中一个条件如果我理解正确,您正在寻找:
where A is not null AND B <> 0
如果我理解正确,您正在寻找:
where A is not null AND B <> 0
我需要查询。。。不返回同时包含两行的行
满足我的where条款的条件
听起来你想否定WHERE子句。像这样:
WHERE NOT (A IS NOT NULL AND B !=0)
这可以在不使用双负片的情况下重写:
WHERE (A IS NULL OR B = 0 OR B IS NULL)
我需要查询。。。不返回同时包含两行的行
满足我的where条款的条件
听起来你想否定WHERE子句。像这样:
WHERE NOT (A IS NOT NULL AND B !=0)
这可以在不使用双负片的情况下重写:
WHERE (A IS NULL OR B = 0 OR B IS NULL)
有人在这里发布了这个答案,但他们删除了它(不知道为什么?),但他们的答案奏效了
WHERE NOT(A is null AND B=0)
我试着用
where A is not null AND B <> 0
谢谢 有人在这里发布了这个答案,但后来他们删除了它(不知道为什么?),但他们的答案奏效了
WHERE NOT(A is null AND B=0)
我试着用
where A is not null AND B <> 0
谢谢 @armit Bhargave如果只有1个条件为真,我不希望因为我的where子句而删除任何行。我只希望在两个条件都为true时(对于表中的特定行),不返回该行。我得到的记录很少,因为只满足1个条件的行也不会返回。请提供示例数据和所需的输出。@armit Bhargave如果只有1个条件为真,我不希望因为where子句而删除任何行。我只希望在两个条件都为true时(对于表中的特定行),不返回该行。我得到的记录很少,因为只满足1个条件的行也没有返回。请提供示例数据和所需的输出。我认为应该是或B=0。我只希望我从查询中得到的结果是表中的行,其中A列不为NUll,B列不为0,但我需要满足这两个条件,而不仅仅是其中一个Theme我认为应该是或B=0我只希望我从查询中得到的结果是A列不为NUll且B列不为0的表中的行,但我需要满足这两个条件,而不仅仅是其中一个条件我最终不得不按照您的建议使用where not子句,但我不希望我的结果包括A为NUll且B=0的任何行所以我不得不使用WHERE NOT(A为null,B=0)我最终不得不按照您的建议使用WHERE NOT子句,但我不希望我的结果包含A为null,B=0的任何行,所以我不得不使用WHERE NOT(A为null,B=0)