最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

Oracle批量update

来源:动视网 责编:小采 时间:2020-11-09 11:44:38
文档

Oracle批量update

Oracle批量update:Oracle批量update,这种写法,会更新t1表中的所有行:如果t1.a=t2.a的,就更新t2中查出的记录进t1;如果t1.alt;gt;t2.a的,t1中 需求: 将t2(t_statbuf)表中id和t1(T_Mt)表相同的记录更新进t1表。 1.错误的写法: [sql] 这种写法,会更
推荐度:
导读Oracle批量update:Oracle批量update,这种写法,会更新t1表中的所有行:如果t1.a=t2.a的,就更新t2中查出的记录进t1;如果t1.alt;gt;t2.a的,t1中 需求: 将t2(t_statbuf)表中id和t1(T_Mt)表相同的记录更新进t1表。 1.错误的写法: [sql] 这种写法,会更


Oracle批量update,这种写法,会更新t1表中的所有行:如果t1.a=t2.a的,就更新t2中查出的记录进t1;如果t1.alt;gt;t2.a的,t1中

需求:

将t2(t_statbuf)表中id和t1(T_Mt)表相同的记录更新进t1表。

1.错误的写法:

[sql]

  • 这种写法,会更新t1表中的所有行:如果t1.a=t2.a的,就更新t2中查出的记录进t1;如果t1.a<>t2.a的,t1中的记录会被更新成空(null)。

    正确的写法:

    [sql]

  • 解析:

    正确的写法,就是在后面加了一句 where exists(select 1 from table_name_2 t2 where t1.a=t2.a);

    这句话的意思是:如果存在t1.a=t2.a,就更新,否则,不更新,所以不会导致t1表中所有的记录都被更新。

    例:

    update table_name_1 set (a,b) = (select 1,2 from dual where 1=2);

    这个结果会把table_name_1中的记录全部更新成空(null),因为后面1=2不成立。

    总结:

    update时,要弄清限定条件,要测试!

    我的测试语句:

    [sql]

    我的业务语句:

    [sql]

    文档

    Oracle批量update

    Oracle批量update:Oracle批量update,这种写法,会更新t1表中的所有行:如果t1.a=t2.a的,就更新t2中查出的记录进t1;如果t1.alt;gt;t2.a的,t1中 需求: 将t2(t_statbuf)表中id和t1(T_Mt)表相同的记录更新进t1表。 1.错误的写法: [sql] 这种写法,会更
    推荐度:
    标签: 批量 更新 数据库
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top