zoukankan      html  css  js  c++  java
  • 关系型数据库关联更新数据汇总

    先给出需求,有2张表,学生表和分数表,两种表都有一个分数列,但是这两列的值不一致,现在需要更新学生表,让学生表中的值等于分数表中的值。
    初始化脚本如下:

    create table student
    (
      id varchar(100) primary key,
      name varchar(50),
      addr varchar(50),
      score int
    );
    
    create table score
    (
      stuId varchar(100) primary key,
      score int
    );
    
    insert into student(id,name,addr,score) values('1','张三','重庆',100);
    insert into student(id,name,addr,score) values('2','张三2','重庆',120);
    insert into student(id,name,addr,score) values('3','张三3','重庆',150);
    
    insert into score(stuId,score) values('1',10);
    insert into score(stuId,score) values('2',12);
    insert into score(stuId,score) values('4',50);

    数据展示如下:

       

    mysql更新脚本:

    update student a inner join score b on a.id=b.stuId set a.score=b.score;

    oracle更新脚本:

    -- 方式一
    UPDATE (
    select t1.score t1score,t2.score t2score from student t1 inner join score t2 on t1.id=t2.stuId
    )t
    set t1score =t2score;
    
    -- 方式二
    merge into student
    using (select stuId,score from score) t
    on (t.stuId = student.id)
    when matched then 
      update set student.score = t.score;

    Sqlserver更新脚本: 

    update a set a.score=b.score from student a inner join score b on a.id=b.stuId;
  • 相关阅读:
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    Javascript事件机制
    DOM模型
    MVC与三层架构解析学习
    BOM基础
    Javascript对象
    Javascript关键字,条件语句,函数及函数相关知识
    单词首字母大写
    HTML5.1 新增的14项特性学习
  • 原文地址:https://www.cnblogs.com/duanjt/p/14166861.html
Copyright © 2011-2022 走看看