gpt4 book ai didi

mysql - 组合两个有利于左侧的 MySQL 表

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

我在 MySQL 数据库中有两个相当大的表,它们具有相同的列,但信息不同。我想将它们合并到一张新表中。问题是两个表都使用主键 MasterID,且主键不能重复。因此,我想合并这两个表,如果有两条记录具有相同的 MasterID,我想使用左表中的记录。我试过这个:

INSERT INTO `new_table`
SELECT * FROM `left_table`
UNION
SELECT * FROM `right_table`

但这并没有达到目的。非常感谢!

最佳答案

首先,union allunion 更好。然后,您可以使用 not contains 来实现逻辑:

INSERT INTO `new_table`
SELECT lt.*
FROM `left_table` lt
UNION ALL
SELECT rt.*
FROM `right_table` rt
WHERE NOT EXISTS (SELECT 1 FROM left_table lt WHERE lt.masterid = rt.masterid);

关于mysql - 组合两个有利于左侧的 MySQL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45799532/

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