如果mysql数据类型是timestamp,默认值为“0000-00-00 00:00”,如何检查是否为null?

omqzjyyz  于 2023-04-29  发布在  Mysql
关注(0)|答案(2)|浏览(138)

我想找出返回truefalse的最佳方法,如果mysql数据类型为TIMESTAMP,则返回日期0000-00-00 00:00
我试过这样-

if($mycolumn == "0000-00-00 00:00") {
    echo "null";
} else {
    echo "not null";
}

这是时间戳列的mysql-

last_login TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00'

我能知道这是否是通往工作的路吗?然后我如何最好地检查它是否为空时间。.?
谢谢大家。

8zzbczxx

8zzbczxx1#

我想对你来说最好的办法就是用这个方法

SELECT  IF(last_login = '0000-00-00 00:00:00', "null", "not null") as last_login from ...
sh7euo9m

sh7euo9m2#

用户名和密码是任意的,但是如果您对计数进行分组,则可以检查last_login是否大于0。

SELECT * FROM (SELECT username, COUNT(last_login) AS date_checker FROM sessions
        WHERE password = '123456'
) AS tmp WHERE (date_checker = 0 OR username = 'foobar')

相关问题