gpt4 book ai didi

mysql - 比较两个表的数据,将共同数据存储在第三个表中,否则存储在第四个表中

转载 作者:行者123 更新时间:2023-11-30 00:35:48 24 4
gpt4 key购买 nike

我有四个具有相同结构的表。假设其中有一个列名称。我需要检查 table1 列名称中的值是否存在出现在 name 列中的table2 .

如果存在,我需要将此名称插入列 name 中的table3 ,否则在 name 列中的table4 .

最佳答案

假设 INSERT 和 Postgres ...
我会使用data-modifying CTE (Postgrs 9.1+)具有一个 SELECT 和两个 INSERT:

WITH cte AS (
SELECT t1.name, t2.name IS NULL AS t2_missing
FROM table1 t1
LEFT JOIN table2 USING (name)
)
, ins AS (
INSERT INTO table3 (name)
SELECT name FROM cte WHERE NOT t2_missing
)
INSERT INTO table4 (name)
SELECT name FROM cte WHERE t2_missing;

同样的情况在 MySQL 中是不可能的(没有 CTE,更不用说可写的 CTE)。

关于mysql - 比较两个表的数据,将共同数据存储在第三个表中,否则存储在第四个表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22189894/

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