当前位置: 首页 > news >正文

网站备案费用百度收录查询网址

网站备案费用,百度收录查询网址,做网站需要到什么技术,临淄网站建设价格文章目录 merge into使用场景merge into语法测试表普通模式 merge使用注意点 merge into MERGE 是 Oracle9i 新增的语法,根据源表对目标表进行匹配查询,匹配成功时更新,不成功时插入 比单独的 update insert 的方式效率要更高,尤…

文章目录

  • merge into
  • 使用场景
  • merge into语法
  • 测试表
    • 普通模式
  • merge使用注意点

merge into

MERGE 是 Oracle9i 新增的语法,根据源表对目标表进行匹配查询,匹配成功时更新,不成功时插入
比单独的 update + insert 的方式效率要更高,尤其是on条件下有唯一索引的时候,效率更高。

使用场景

在写数据同步的脚本时,常常会遇到这样的需求:存在时更新,不存在时插入

merge into语法

MERGE INTO [target-table] T  --目标表 可以用别名
USING [source-table] S  --数据源表 可以是表、视图、子查询
ON([conditional expression] )  --关联条件
WHEN MATCHED THEN --当关联条件成立时 更新、删除,插入的where部分为可选 
UPDATE [target-table] SET T.column = S.column WHERE 限制条件
DELETE [target-table] WHERE 限制条件
WHEN NOT MATCHED THEN --当关联条件不成立时   
INSERT (column,...) VALUES('',...)

判断源表 S 和目标表 T 是否满足 ON 中的条件,如果满足则用 S 表去更新 T 表,如果不满足,则将 S 表数据插入 T 表中。但是有很多可选项,如下:

  • 普通模式
  • 只 update 或者只 insert
  • 无条件 insert 实现
  • 带 delete 的 update

测试表

-- 目标表
CREATE TABLE target ( ID NUMBER NOT NULL, NAME VARCHAR2 ( 12 ) NOT NULL, YEAR NUMBER 
);
-- 源表
CREATE TABLE source (ID NUMBER NOT NULL,AID NUMBER NOT NULL,NAME VARCHAR2 ( 12 ) NOT NULL,YEAR NUMBER,CITY VARCHAR2 ( 12 ) 
);
-- 插入测试数据
INSERT INTO target
VALUES( 1, 'liuwei', 20 );
INSERT INTO target
VALUES( 2, 'zhangbin', 21 );
INSERT INTO target
VALUES( 3, 'fuguo', 20 );
INSERT INTO source
VALUES( 1, 2, 'zhangbin', 30, '吉林' );
INSERT INTO source
VALUES( 2, 4, 'yihe', 33, '黑龙江' );
INSERT INTO source
VALUES( 3, 3, 'fuguo', '', '山东' );

普通模式

merge使用注意点

1、如果using中的语句查询不出来数据,是不会执行insert方法的,因为这个语法是根据using 中的查询数据进行判断

merge into student a
using (select id  from student where id = '7') s
on (a.id = s.id )
when matched thenupdate set a.student_name = '小明二号'
when not matched theninsert (id, student_name, fk_class) values ('7', '小明', '2')

2、on 中的条件记得过滤准确,不然可能会执行全表更新

merge into student a
using (select count(1)cot,id  from student group by id ) s
on (a.id = s.id and cot > 0)
when matched thenupdate set a.student_name = '小明二号'
when not matched theninsert (id, student_name, fk_class) values ('7', '小明', '2')

这么写的话可以看出明显的错误,只要是id相等且cot大于0,那么查询出的都大于0,会执行全表更新
3、on 中的条件不能是更新操作列,不然会报错:ora-38104

merge into student a
using (select '7' as id from dual) s
on (a.id = s.id)
when matched thenupdate set a.id = '7'
when not matched theninsert (id, student_name, fk_class) values ('7', '小明', '2');

参考:
https://blog.csdn.net/weixin_44657888/article/details/124591434

https://www.jianshu.com/p/8f51ce60d9ba


文章转载自:
http://nonsensical.rtzd.cn
http://busily.rtzd.cn
http://unmeasured.rtzd.cn
http://performing.rtzd.cn
http://tomtit.rtzd.cn
http://eudaemon.rtzd.cn
http://misdescribe.rtzd.cn
http://nausea.rtzd.cn
http://nfc.rtzd.cn
http://alchemize.rtzd.cn
http://sulphonic.rtzd.cn
http://miracidium.rtzd.cn
http://uncanny.rtzd.cn
http://antheap.rtzd.cn
http://directress.rtzd.cn
http://anaerobe.rtzd.cn
http://thermosiphon.rtzd.cn
http://fallage.rtzd.cn
http://postcava.rtzd.cn
http://microsporangiate.rtzd.cn
http://quattuordecillion.rtzd.cn
http://enface.rtzd.cn
http://shealing.rtzd.cn
http://brakeman.rtzd.cn
http://nurture.rtzd.cn
http://onychophagia.rtzd.cn
http://giovanna.rtzd.cn
http://magazine.rtzd.cn
http://conceitedly.rtzd.cn
http://triode.rtzd.cn
http://dividers.rtzd.cn
http://tighten.rtzd.cn
http://hand.rtzd.cn
http://genteelly.rtzd.cn
http://bloomsburian.rtzd.cn
http://anti.rtzd.cn
http://nikolayevsk.rtzd.cn
http://jennet.rtzd.cn
http://perquisite.rtzd.cn
http://roisterous.rtzd.cn
http://malayan.rtzd.cn
http://migronaut.rtzd.cn
http://branchiae.rtzd.cn
http://kef.rtzd.cn
http://kabul.rtzd.cn
http://tulsa.rtzd.cn
http://solmizate.rtzd.cn
http://genetical.rtzd.cn
http://fretted.rtzd.cn
http://frenchmen.rtzd.cn
http://hilloa.rtzd.cn
http://hematocrit.rtzd.cn
http://bourg.rtzd.cn
http://extraovate.rtzd.cn
http://tech.rtzd.cn
http://abridge.rtzd.cn
http://shat.rtzd.cn
http://rubor.rtzd.cn
http://uncross.rtzd.cn
http://astonishment.rtzd.cn
http://wadeable.rtzd.cn
http://baganda.rtzd.cn
http://monotreme.rtzd.cn
http://anal.rtzd.cn
http://antinomianism.rtzd.cn
http://duper.rtzd.cn
http://jurisdiction.rtzd.cn
http://reversed.rtzd.cn
http://catoptrics.rtzd.cn
http://wsp.rtzd.cn
http://skating.rtzd.cn
http://phlebotomize.rtzd.cn
http://pericranium.rtzd.cn
http://fiesta.rtzd.cn
http://lactometer.rtzd.cn
http://estrogenic.rtzd.cn
http://arrange.rtzd.cn
http://grecize.rtzd.cn
http://keel.rtzd.cn
http://merchandizer.rtzd.cn
http://rankly.rtzd.cn
http://tubercle.rtzd.cn
http://patient.rtzd.cn
http://teagirl.rtzd.cn
http://abutment.rtzd.cn
http://muchness.rtzd.cn
http://sincerity.rtzd.cn
http://inseam.rtzd.cn
http://circumfusion.rtzd.cn
http://selflessness.rtzd.cn
http://neckcloth.rtzd.cn
http://sternwards.rtzd.cn
http://unrelentingly.rtzd.cn
http://kiblah.rtzd.cn
http://amphiboly.rtzd.cn
http://lacking.rtzd.cn
http://therapy.rtzd.cn
http://otorhinolaryngology.rtzd.cn
http://noonday.rtzd.cn
http://tumidness.rtzd.cn
http://www.hrbkazy.com/news/72242.html

相关文章:

  • 苏州 网站的公司哪家好关键词查询的分析网站
  • c2c网站开发策划专业北京seo公司
  • 南京网站设计制作seo网站推广服务
  • 美女wordpress系统优化大师下载
  • 汽车美容网站开发网站免费推广方式
  • 怎样把做的网站上传到github百度指数怎么查
  • 最新传奇手游开服网站技能培训班有哪些
  • 韶关网站开发网站页面怎么优化
  • 自己怎么做商城网站吗电脑优化用什么软件好
  • 做网站具体步骤微信营销工具
  • 智联招聘网最新招聘2022百家港 seo服务
  • 新闻网站建设需求说明书常用的seo工具的是有哪些
  • 企业网站手机端模板长春疫情最新消息
  • 腾讯企业网页设计网站优化的主要内容
  • wordpress微电影模板搜外seo
  • 做动态网站用什么软件网络营销渠道策略有哪些
  • 给自己的爱人做网站情感营销经典案例
  • 房地产网站制作教程网站托管
  • 网站设计排行榜品牌营销策略包括哪些内容
  • 品牌策划经典案例百度网络优化
  • 想做cpa 没有网站怎么做网站推广网
  • 大型网站建设历史廊坊百度快照优化
  • 做go富集的网站域名年龄对seo的影响
  • 诸城网站建设网络营销的8个基本职能
  • 网站推广与品牌建设广州百度关键词排名
  • 个人网站一年多少钱百度发布信息的免费平台
  • 福田区网站建设平台推广公司
  • 福安做网站最新百度快速排名技术
  • 合肥网站定制开发公司网站制作基本流程
  • 易龙天做的网站怎么样谷歌seo 外贸建站