NOT NULL返回NULL值

时间:2017-08-21 20:31:56

标签: mysql null

当我运行以下查询时,我得到12行,当我应该有6个(那些在“第一次”中不为空的)时,为什么我得到全部12个?因为他们是未来的日期,他们是空的,但我想让桌子在桌子上显示全年的日期。我已经使用varchar而不是int为第一,这不是我所知道的好习惯。

SELECT * 
FROM office_figures 2016 
WHERE date_figures=2017 AND firsts IS NOT NULL

mysql table

2 个答案:

答案 0 :(得分:1)

SELECT * 
FROM office_figures 2016 
WHERE date_figures=2017 AND firsts IS NOT NULL AND firsts !="";

您需要检查列中的空值以及"" != NULL。

  • Null缺少值。空字符串是一个值,但是 只是空的。 Null对数据库来说是特殊的。

  • Null没有边界,可以用于字符串,整数,日期等。 数据库中的字段。

  • NULL没有分配任何内存,NUll值的字符串只是一个 在内存中指向无处的指针。但是,空IS 分配给一个内存位置,虽然该值存储在 记忆是""。

Difference between NULL and Blank Value in Mysql
请查看以上链接以了解更多信息。

答案 1 :(得分:1)

可能你不想在那里的第一个不是空的,它们可能只是空字符串''。 试试这个:

md-virtual-repeat