【问题标题】:MySQL - Update column with DATEADD on another columnMySQL - 在另一列上使用 DATEADD 更新列
【发布时间】:2021-07-20 03:28:15
【问题描述】:

我正在尝试使用新值更新我的数据库表中的 created_at (DATETIME) 列,该值基于另一列 - 比 delivery_estimate (DATE) 列早 30 天。

我尝试了以下方法,但我的语法出现错误,说 DATEADD 不存在:

UPDATE my_table
SET created_at = DATEADD(day, -30, delivery_estimate)

【问题讨论】:

  • 用您使用的数据库标记您的问题。
  • DATE_ADD() 似乎适用于 mysql
  • 是的,Mysql,抱歉

标签: mysql sql sql-update dateadd


【解决方案1】:

MySql 中函数的正确名称是DATE_ADD(),但您也可以使用SQL Server syntax
改为:

UPDATE my_table
SET created_at = DATE_ADD(delivery_estimate, INTERVAL -30 day) 

或更简单:

UPDATE my_table
SET created_at = delivery_estimate - INTERVAL 30 day

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-20
    • 1970-01-01
    • 2015-05-02
    • 2016-09-29
    • 2019-10-13
    • 1970-01-01
    • 1970-01-01
    • 2021-05-30
    相关资源
    最近更新 更多