php - 使用 cron 作业在 mysql 中的一个查询中更新和选择

标签 php mysql cron

如果到期日期距当前日期正好 30 天,则使用 cron 作业尝试将 30dexpf 字段更新为 1。否则 30dexpf 应该有 0 但没有成功。

$query="UPDATE user_pages SET 30dexpf=1 WHERE expiry > CURRENT_DATE - INTERVAL 30 DAY";

我也尝试过,但没有成功

$query="update user_pages 30dexpf = 
(case when expiry > CURRENT_DATE - INTERVAL 30 DAY then 1 else 0 end)";

这是我的数据库结构

| user_id |  30dexpf  |        expiry        |

|    7    |    0      |  2016-08-30 11:27:56 | 

最佳答案

如果到期日期距离当前日期正好 30 天,我猜您希望将 30dexpf 字段更新为 1。否则 30dexpf 应该有 0

UPDATE user_pages
SET `30dexpf` = CASE
                WHEN (
                    DATE(expiry) = CURDATE() + INTERVAL 30 DAY
                ) THEN 1 ELSE   0 END;

关于php - 使用 cron 作业在 mysql 中的一个查询中更新和选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38675687/

相关文章:

php - 通过 .htaccess 在 PHP 中延长 session 超时

php - 使用 SQL 查询获取列名

mysql - 如何对真正的数据库密集型 Rails 操作进行基准测试和优化?

c# - 通过从 C# 应用程序获取 DBName 创建 DB

php - Cron 作业删除在特定时间之前创建的文件

Python-crontab job.write() 导致 fileIO 错误

php - 代码审查-PHP语法错误意外$ end

php - php 中的字符串与 javascript 中的字符串

php - 使用 Mysql 行显示随机化结果时出现问题

perl - 为什么我的 Perl 脚本在 cron 运行时无法加载模块?