在我的MYSQL数据库中,我执行了以下查询:
SELECT * FROM mytable WHERE date_column < 1971-01-01 AND date_column IS NOT NULL;这将返回大约3000个条目,在mysql命令行提示符和IntelliJ IDEA mysql数据库编辑器中,日期显示为NULL。
该列具有日期类型。
数据库是已运行了几年的prod数据库环境的副本。
一张唱片怎么会在那个州结束?那是什么状态?我怎么才能把它修好?
PS:< 1971/01/01子句只是为了过滤查询中的正确日期。如果我只是查询IS NULL子句,当然还会得到这些奇怪的日期。
发布于 2017-05-22 13:30:55
我很惊讶这起作用。首先,日期常数应该被单引号包围:
SELECT *
FROM mytable
WHERE date_column < '1971-01-01' AND date_column IS NOT NULL;其次,这不能返回date_column的date_column值。这说明了两件事中的一件:
date_col实际上是另一种类型,例如varchar,您看到的是'NULL'字符串,而不是NULL值。NULL。https://stackoverflow.com/questions/44114169
复制相似问题