mysql - 如何更新时间戳

标签 mysql sql database

我现在在使用 dateadd() 函数时遇到问题。基本上,如果 cexpireday(timestamp) 距当前日期至少 10 天,我想添加 1 天。

我尝试了两种方法,但都不起作用

update card

set cexpireday = dateadd(day,1,cexpireday)

where cexpireday - current_timestamp() >= '0000-00-10 00:00:00'

update card

set cexpireday = date_add(cexpireday,INTERVAL 10 day )

where datediff(day,cexpireday,current_timestamp) >= 10

第一个结果是“dateadd 不存在”,第二个结果是“导航函数 datediff() 的参数不正确”。

谁能帮我解决这个问题吗?

最佳答案

也许试试这个:

UPDATE card
SET cexpireday = DATE_ADD(cexpireday, INTERVAL 1 DAY)
WHERE cexpireday > DATE_ADD(NOW(), INTERVAL 10 DAY)   

关于mysql - 如何更新时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55210138/

相关文章:

mysql - 如何在 MYSQL 中通过另一列选择具有 MAX(列值)、PARTITION 的行?

mysql - 在同一查询中进一步过滤 GROUP_CONCAT 值

php - 从数据库中旋转图像并保存到数据库 blob 类型

Mysql——数据库规范化

php - 将文件名作为 post 变量不好吗?

php - 为什么PHP版本运行速度比MySQL快

php - 用户限制 - 在数据库中还是直接到文件中? (灵活性与性能?)

sql - 使用变量简化 SQL 查询

sql - 使用 VB.NET 从 Access 中检索长二进制数据(图像)

sql-server - SQL Server UPDATE 语句不更新匹配约束的行