gpt4 book ai didi

sql - 如何使此 SQL 任务更快地完成

转载 作者:行者123 更新时间:2023-12-02 06:45:35 25 4
gpt4 key购买 nike

假设表 1 有 1,000,000 行。表2中有50,000行

输入

表一

Id    User   InternetAmountDue
1 joe NULL

表2

InternetUserId   UserName AmountDue
21 kay 21.00
10091 joe 21.00

我想将表 2 的数据合并到表 1,如下所示:

  1. 如果表 1 中存在用户,则更新 InternetAmountDue 列
  2. 否则,插入新用户

输出

表一

Id    User   InternetAmountDue
1 joe 21.00
2 kay 21.00

考虑到涉及的数据量很大,如何才能快速完成这项工作?

最佳答案

SQL Server 2008 提供特殊结构 MERGE只为你的情况:

MERGE
INTO table1 AS t1
USING table2 AS t2
ON t2.UserName = t1.user
WHEN MATCHED THEN
UPDATE
SET t1.AmountDue = t2.AmountDue
WHEN NOT MATCHED THEN
INSERT (user, InternetAmountDue)
VALUES (t2.UserName, t2.AmountDue)

关于sql - 如何使此 SQL 任务更快地完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1064812/

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