如何测试MySQL中的空列和非空列

时间:2012-04-14 08:20:25

标签: mysql null

假设我有一个包含两个名为A和B的列的表。我想获得一个满足以下条件的结果集:

获取结果集

  1. A列为空
  2. B列不为空
  3. 所以我做了以下SQL:

    SELECT * FROM myTestTable WHERE columnA IS NULL and columnB IS NOT NULL;
    

    但它会抛出错误?

    有人可以帮忙吗?

    提前致谢!

2 个答案:

答案 0 :(得分:1)

UPDATE!

此查询将使用添加的反引号(`),如下所示:


SELECT * FROM `myTestTable` WHERE `columnA` IS NULL and `columnB` IS NOT NULL;

答案 1 :(得分:0)

你没有发布你得到的错误,但你可以试试这个。

CREATE table ex(column1 varchar(10), column2 varchar(10));

INSERT into ex VALUES(NULL,'gvd');
INSERT into ex VALUES(NULL,'vish');
insert into ex VALUES('b',NULL);
insert into ex VALUES(NULL,NULL);

SELECT * FROM ex
where column1 is NULL AND column2 is NOT null;

column1    column2
---------- ----------
NULL       vish
NULL       gvd

(2行(s)受影响)

在我的情况下,按照上述查询运行正常。