gpt4 book ai didi

MySQL触发器在插入或更新之前将日期值更改为周开始

转载 作者:行者123 更新时间:2023-11-29 17:53:14 25 4
gpt4 key购买 nike

我有一个带有日期列的表格,该列应始终是每个条目一周的第一天。

有没有办法创建一个触发器,将输入值更改为相应的开始日期?

例如,如果我有:

insert into `Customer`.`Orders`
(`week`,`name`,`mon`,`tue`,`wed`,`thu`,`fri`)
values
('2018-02-27','John','12','14','0','3','44');

我可以以某种方式让触发器获取该日期值并将其替换为周开始吗?我能够通过以下方式获取特定日期的周开始时间:

SELECT DATE_SUB('2018-02-27', INTERVAL DAYOFWEEK('2018-02-27')-1 DAY);

欢迎任何意见!

最佳答案

您需要研究 BEFORE INSERT 和 BEFORE UPDATE 触发器;然后把这样的东西放进他们的 body 里。

SET NEW.`week` = DATE_SUB(NEW.`week`, INTERVAL DAYOFWEEK(NEW.`week`)-1 DAY)

这是假设您的计算是正确的。

关于MySQL触发器在插入或更新之前将日期值更改为周开始,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49120843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com