当前位置: 首页 > 知识库问答 >
问题:

使用MERGE语句时输出不同?

司徒高丽
2023-03-14
MERGE INTO target 
USING SELECT * FROM @source
WHEN MATCHED THEN
UPDATE SET ...columns...
WHEN NOT MATCHED THEN
INSERT ...columns...
OUTPUT inserted.* INTO @insertedRecord

共有1个答案

柴深
2023-03-14

是的。

insertedpsuedotable将处理进入表中的新值,无论是插入的还是更新的。

deleted伪表将处理旧值,无论是已删除还是已更新(对于更新,它将是以前的值)。

 类似资料:
  • 下面是我在Snowflake1中实现merge with stream的步骤。创建一个表create或replace表employee(employee_id number,salary number,manager_id number);2.创建流。在表employees上创建或替换流employees_stream3.创建消费者表。创建或替换表employees_consumer(employ

  • 问题内容: 我正在尝试在Go中执行MERGE语句: 但是我得到了这个错误: 在MySQL中也是如此: 怎么了? 问题答案: 不支持,等效的是 插入…在重复的密钥更新上 尝试这个, 但请确保将其设置为或。

  • 我试图使用PHP的file_get_contents()获取以下URL的内容,但是输出与使用我的浏览器时不同。我尝试设置一个用户代理,但没有成功,我还尝试完全模拟浏览器执行的HTTP请求,但没有成功。有人知道什么能使它工作吗?使用PHP时,我会进入登录表单,但通过浏览器打开时,它只会打开计划: 网址如下: https://webuntis.a12.nl/WebUntis/Timetable.do?

  • 问题内容: 源表 目标表 合并后 我正在使用此SQL 这会导致错误 消息8672,级别16,状态1,第18行 MERGE语句尝试多次更新或删除同一行。当目标行与多个源行匹配时,就会发生这种情况。MERGE语句不能多次更新/删除目标表的同一行。优化ON子句以确保目标行最多匹配一个源行,或使用GROUP BY子句对源行进行分组。 我想用三个匹配值中的任何一个用地址值更新A中的行。这该怎么做? 问题答案

  • 我有以下导入,它使用来自csv的逐行数据。 我想将csv(datetime)中的datetime字段添加到和节点。 到目前为止,我已经看到了很多关于字符串转换的内容,但通常是在语句或部分。如何添加带有datetime的字符串并转换为DateFormat。 我正在寻找一个解决方案,并尝试了许多事情,如以下,但这不起作用: 我的字符串datetime的格式是:

  • 问题内容: 我正在尝试使用pyodbc创建一个SQL Server数据库。 失败并显示此错误 多语句事务中不允许使用CREATE DATABASE语句 它失败,因为该方法启动了事务,并且无法在事务内运行。 那么还有其他方法可以使用python执行命令吗? 问题答案: 建立连接时,pyodbc的默认设置符合Python的DB- API规范。因此,当执行第一个SQL语句时,ODBC将开始有效的数据库事