博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20、SQL Server 数据修改之Update
阅读量:4662 次
发布时间:2019-06-09

本文共 908 字,大约阅读时间需要 3 分钟。

数据修改之Update 

update命令可以更新表中某行的某列,也可以更新表的所有行中的所有列。

同时,通过使用可选的From子句,可以利用SQL Select的全部功能从非常复杂的数据

源获取用于更新的数据。

一、更新单个表

基本语法:

update 表名 set 列1=值1or表达式or列,列2=值2,列3=值3,....

[from data sources] [where conditions]

注:a、一般语法中没有from data sources 

b、没有where子句时,将更新整个表,所以要非常注意。

c、From Data Sources 可获取数据源中的数据用来更新,但只能更新update后面

紧接的表中的数据(可用子查询来代替解决)

d、语法中的  ‘列’,说的是from data sources中的列

下面是一个示例:

雇员要加薪,但加薪的幅度取决于雇员所在的部门,在岗时间,绩效考核等。

如果每个部门的加薪幅度都存储在Department表中,通过联接Employee

和Department表,在结果集中获取部门的加薪系数,可以使用一个update

语句调整所有雇员的薪水。

update Employee set salary=salary*(1+(2+(((Datediff(yy,DateHire,'5/1/2002')*0.1)+Datediff(yy,DatePosition,'5/1/2002')*0.2)++(case when Employee.PerformanceRathy>=2 then Employee.PerformanceRathyelse 0end)*0.5)*Department.RaiseFactor))/100)from Employeeinner join Department on Employee.DeptID=Dept.DeptID

 

注:选择和数据时,就采用基于数据集而不是数据行的方式。

 

转载于:https://www.cnblogs.com/dyllove98/archive/2013/06/15/3137652.html

你可能感兴趣的文章
bzoj4580: [Usaco2016 Open]248
查看>>
HTML5 VS. Flash&Flex? – 浅谈Flash/Flex/HTML 5技术选型
查看>>
响应者链条
查看>>
基于定位的社交应用Foursquare开源网址(wp7)
查看>>
机电传动控制读书笔记二(书本内容)
查看>>
Address already in use: JVM_Bind<null>:8080错误的解决办法
查看>>
Vue子组件监听事件中传递参数的方法
查看>>
面向对象的几种方法详解(后)
查看>>
年龄问题
查看>>
winform自动更新并实现文件的批量异步下载
查看>>
UVA 301 Transportation
查看>>
MYSQL的常用命令和增删改查语句和数据类型!
查看>>
再回首数据结构—红黑树(一)
查看>>
界面设计规范(转)
查看>>
js与jquery混用问题
查看>>
可空类型 Nullable<T>
查看>>
python之封装
查看>>
iOS开发常用快捷键
查看>>
day3
查看>>
微信打开网页键盘弹起后页面会被顶上去,键盘收起,页面无法回到原来的位置,导致弹框里的按钮响应区域错位 position为fixed...
查看>>