gpt4 book ai didi

MySQL insert unique from union

转载 作者:行者123 更新时间:2023-11-29 02:32:05 25 4
gpt4 key购买 nike

我之前没有太多使用数据库的经验,但我了解一些基础知识。现在,我有两个表,我们称之为表 1 和表 2。我正在尝试创建一个触发器,这样当我将数据插入表 1 时,它会触发触发器以获取 col1 的所有不同值表 1,我想用它插入表 2。随着更多数据被添加到表 1,毫无疑问会出现重复。如果出现重复,我不想将重复项插入到表 2 中。因此,我认为我可能会使用 Union 来提取唯一值并将它们插入到表 2 中,但是在 Union 之后我不完全确定是什么去做。我这样想是不是疯了,有办法做得更好吗?

DELIMITER // 
CREATE TRIGGER testdb
AFTER INSERT ON testdb.table1
FOR EACH ROW
BEGIN
SELECT col1 FROM table1
UNION
SELECT col1 FROM table2
(I imagine the insert statement would go here)
END //
DELIMITER ;

简而言之,数据进入表 1,触发器在插入时启动以从表 1 的第 1 列和表 2 的第 1 列中获取唯一值,以尝试获取所有唯一值,然后我想将唯一值插入到表中2 Col 1,但其中一些唯一值可能已经存在。

最佳答案

假设table2定义为

CREATE TABLE table2 (col1 ..., PRIMARY KEY(col1));

你可以这样做:

DELIMITER // 
CREATE TRIGGER testdb
AFTER INSERT ON testdb.table1
FOR EACH ROW
BEGIN
INSERT IGNORE INTO table2 SET col1 = NEW.col1;
END //
DELIMITER ;

关于MySQL insert unique from union,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11602573/

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