在WEEK()或MONTH()之间的IF总是返回false

时间:2015-11-11 19:33:25

标签: php mysql

我正在尝试更新某些日期,只有当新的日期处于不同的WEEK()或MONTH()时。

查询如下:

.*?MINISTÉRIO DO TRABALHO E EMPREGO.*?Nº ARQUIVO:\s([\w-]+).*?Z6:\s\w+\b
|-------------------------- 1 ----------------------------|--- 2 ------|

我没有收到任何错误,但似乎IF总是返回FALSE。

编辑:经过一些测试后,我发现WEEK()和MONTH()总是返回null,我该如何使查询工作?

1 个答案:

答案 0 :(得分:3)

php time()函数返回unix纪元时间la 1447270661,而mysql week() / month()函数则返回mysql日期值。

select curdate(),
       week(curdate()),
       week('2015-11-11'),
       week(FROM_UNIXTIME(1447270661));
#2015-11-11 45 45 45

您需要将正确的参数值传递给mysql函数。如果您有unix时间,可以使用FROM_UNIXTIME进行转换。