首页 > 解决方案 > 来自另一列TIMESTAMP sql的默认时间如何

问题描述

有 2 列,我如何获取要写入 SQL 中 Date_2 的第一个 + 30 天的日期

CREATE TABLE DAS(
    Date_1 TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
    Date_2 TIMESTAMP  DEFAULT
)

标签: mysqlsqlphpmyadmin

解决方案


在 MySQL 8+ 中,表达式可以用作默认值。因此,您只需使用timestampadd()30 分钟即可将current_timestamp.

CREATE TABLE das
             (date_1 timestamp
                     NOT NULL
                     DEFAULT current_timestamp,
              date_2 timestamp
                     DEFAULT (timestampadd(minute,
                                           30,
                                           current_timestamp)));

db<>小提琴


推荐阅读