• 4.8 在表中编辑记录


    问题
    要修改表中某些(或全部)行的值。例如,可能想要将部门20中所有员工的工资增加10%,下面的结果集显示了该部门员工的deptno ename 和sal字段

    select deptno,ename,loc
        from emp
            where deptno = 20
            order by 1,3 

    要将所有的sal字段值增加10%

    解决方案:

    使用update语句来修改数据库表中已有行。例如:

    update emp
        set sal  = sal*1.10
    where deptno = 20 

    讨论:
    当准备要对大量的数据进行更新时,用户可能需要先预览一下结果,此时可以使用一个seslect语句,该语句中包含想要放到set子句中的表达式。下面的select语句显示了工资增加10%后的结果:

    select deptno,
        ename,
        sal as orig_sal,
        sal*.10 as amt_to_add,
        sal*1.10 as new_sal
    from emp
    where deptno =20
    order by 1,5

    增加的工资被分为两列:一列是显示与原工资的差额,而另一列显示增加后的工资。

  • 相关阅读:
    P1182 数列分段Section II
    P1119 灾后重建
    P1133 教主的花园
    P1077 摆花
    P2002 消息扩散
    P2341 [HAOI2006]受欢迎的牛(tarjan+缩点)
    luoguP1726 上白泽慧音
    P1053 篝火晚会
    P2296 寻找道路
    P1156 垃圾陷阱
  • 原文地址:https://www.cnblogs.com/l10n/p/7518753.html
Copyright © 2020-2023  润新知