gpt4 book ai didi

mysql - 使用mysql将缺少的记录从一个表插入到另一个表

转载 作者:可可西里 更新时间:2023-11-01 06:34:40 25 4
gpt4 key购买 nike

我不知道为什么我对这个查询感到困惑。

我有两个表:表 A900 记录,表 B800 记录。两个表都需要包含相同的数据,但存在一些不匹配。

我需要编写一个 mysql 查询,以将 表 A 中缺失的 100 记录插入到 表 B

最后,Table ATable B 应该是相同的。

我不想先截断所有条目然后从另一个表插入。因此,我们将不胜感激。

谢谢。

最佳答案

也可以为此使用 LEFT OUTER JOIN。这将避免子查询开销(当系统可能对外部查询的每个记录执行一次子查询时)就像 John Woo 的回答一样,并且将避免做不必要的工作覆盖已经存在的 800 条记录,就像 user2340435 的一个:

INSERT INTO b
SELECT a.* FROM a
LEFT OUTER JOIN b ON b.id = a.id
WHERE b.id IS NULL;

这将首先选择 AB 表中的所有行,包括两个表中的所有列,但存在于 AB 中的行B 中不存在 B 表的所有列都将为 NULL。然后它只过滤后面的行(WHERE b.id IS NULL),最后,它将所有这些行插入到 B 表中。

关于mysql - 使用mysql将缺少的记录从一个表插入到另一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13053052/

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