gpt4 book ai didi

mysql - 如何在更新的行上查询插入?

转载 作者:太空宇宙 更新时间:2023-11-03 12:34:01 25 4
gpt4 key购买 nike

嘿,我正在尝试更新一个表并创建一个插入行到另一个表。

我有这个更新查询:

UPDATE logs_month SET status ='1'
WHERE DATE_FORMAT(month,"%m/%y") = '11/12'

我希望它是这样的:

UPDATE logs_month SET status ='1',
(INSERT INTO some_table (columns) values (values from the updated row))
WHERE DATE_FORMAT(month,"%m/%y") = '11/12'

如何做到这一点?

我不想使用 2 个查询,因为这个更新可能会在一个月内发生几次,我只想插入当前更新的行以防止重复,而不使用唯一索引。

最佳答案

UPDATE logs_month SET status ='1'
WHERE DATE_FORMAT(month,"%m/%y") = '11/12';
COMMIT;
INSERT INTO some_table (columns) values (select columns
from logs_month where DATE_FORMAT(month,"%m/%y") = '11/12';

您也可以使用TRIGGER

DELIMITER $$
CREATE TRIGGER `logs_m`
AFTER UPDATE ON `logs_month`
FOR EACH ROW
BEGIN
IF NEW.status=1 THEN
INSERT INTO some_table (field) values (NEW.field);
END IF;
END$$

DELIMITER ;

你可以这样做

关于mysql - 如何在更新的行上查询插入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14091654/

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