请问sql数据库在使用merge进行update的时候,如何跟where条件

请问sql数据库在使用merge进行update的时候,如何跟where条件,第1张

merge mytable as T

using(SELECT '123' as a) N

on (Ta != Na) and Tid=2

when matched thenupdate set Ta=Na

试试这个

合并金融数据

主要有两种合并方式。

横向合并:如果你只是准备用某一年,比如说2019年的截面数据,那么你可能需要将一些家庭数据和个人数据合并,这个时候用merge命令:

use "D:\主数据库dta" //打开你的主数据库 merge m:n var using "D:\待合并数据库dta" //var是两个数据库共有的一个变量,m:n是合并的方式

纵向合并:你想构造一个面板数据,需要把2015、2017年、和2019年的数据合并。注意:纵向合并需要保持两表变量名一致。

比较直观的一个区别是,使用update是将实体信息与数据库同步更新。当实体找不到id时,会报错。但用merge方法时,如果找不到id,会保存一条新信息。所以这就是你说的用update报错,用merge就对了

MERGE语句是SQL语句的一种。在SQL Server、Oracle数据库中可用,MySQL、PostgreSQL中不可用。MERGE是Oracle9i新增的语法,用来合并UPDATE和INSERT语句。通过MERGE语句,根据一张表(原数据表,source table)或子查询的连接条件对另外一张(目标表,target table)表进行查询,连接条件匹配上的进行UPDATE,无法匹配的执行INSERT。这个语法仅需要一次全表扫描就完成了全部工作,执行效率要高于INSERT+UPDATE。

以上就是关于请问sql数据库在使用merge进行update的时候,如何跟where条件全部的内容,包括:请问sql数据库在使用merge进行update的时候,如何跟where条件、怎么合并家庭金融数据、merge和update的区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9322876.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存