gpt4 book ai didi

mysql - 将 Table1 中的值添加到 Table2 中而不添加重复项

转载 作者:行者123 更新时间:2023-11-29 00:22:04 26 4
gpt4 key购买 nike

[MySQL 5.5]

我有两个表 - Table_1Table_2

它们具有相同的列 - Col1、Col2、Col3、Col4

Table_1 可以在列 Col1Col2 上有重复项。

示例 1:

   Col1,Col2,Col3,Col4
1) a ,b ,c ,1
2) a ,b ,d ,2

现在 Table_2 有以下行:

示例 2:

   Col1,Col2,Col3,Col4
1) a ,b ,e ,1
2) a ,c ,f ,2

我想将 Table_2 中的所有行写入 Table_1,并且在 Col1Col2 上没有重复项.在上述实例中,插入应忽略上面示例 2 中的第 1 行并添加第 2 行,因为 Table_1 中的组合 (a,c) 没有重复项。

Col1Col2 上添加唯一键将不起作用,因为它会删除示例 1 中的第 2 行。

Table_1Table_2 各有 200 万行。嵌套的 select 语句(我试过)在执行时间方面造成了灾难。

还有别的办法吗?

最佳答案

应该这样做:

INSERT INTO Table_1
SELECT *
FROM Table_2 A
WHERE NOT EXISTS(SELECT 1 FROM Table_1
WHERE Col1 = A.Col1
AND Col2 = A.Col2)

关于mysql - 将 Table1 中的值添加到 Table2 中而不添加重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20710155/

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