我有一个包含多个列的数据库,但我只感兴趣获得两列col-A& col-B,条件是该行将具有: col-A是任何价值& col-B必须为NOT NULL。
我很好地搜索了这个论坛,并且在最简单的尝试中,下面给出了一个:
SELECT col-A,col-B FROM ports WHERE col-B IS NOT NULL;
当我运行此查询时,它会转储包含以下行的列:(请注意 - 此处“ports”是表)
col-A = ANY VALUE + col-B = NULL(blank/empty field)
col-A = ANY VALUE + col-B = NON NULL
即使我尝试过。最通用的语法:
SELECT * FROM ports WHERE col-B IS NOT NULL; <<<< it dumps both empty & non-empty rows
MySQL版本是5.5.32。
答案 0 :(得分:2)
检查两个条件:空白和null
SELECT col-A,col-B
FROM ports
WHERE col-B IS NOT NULL and col-B <> ''
空白不是null
。 null
表示没有值,空白字符串为''
答案 1 :(得分:0)
@uergen的答案很好。但如果您想尝试其他方法,请检查此
SELECT col-A,col-B
FROM ports
WHERE LENGTH(col-B) > 0