我有一个MySQL表和一个datetime类型的列。它的默认值类似于0000-00-00 00:00:00。
如何使用本机MySQL查询功能检查此日期时间列上的给定行的值是否为上述值。例如。不使用“SELECT * FROM table WHERE my_date<>'0000-00-00 00:00:00'”,因为这为我认为的不同MySQL服务器和配置留下了错误的空间。
答案 0 :(得分:1)
SELECT * FROM table WHERE my_date <> 0
您可以使用
进行测试select cast('0000-00-00 00:00:00' as datetime) = 0
返回true
(以及所有其他false
值的datetime
)。
答案 1 :(得分:0)
您可以执行类似“SELECT * FROM table WHERE my_date&gt;'1970-01-01 00:00:00”的操作。 1970年1月1日是常用的纪元日期。