标准SQL语句(6) --- 数据的增删改
来源:互联网 发布:ddg1000数据 编辑:程序博客网 时间:2024/04/30 22:43
声明:本文使用到的数据表请参看本博客的另一篇文章:标准SQL语句(2)--- 表的增删改
1. 添加数据
添加数据使用的SQL命令是insert into ,可分为以下几种情况。
1)添加一行记录
insert into <表名> [ ( <列名1>[, <列名2> ... ] ) ] values ( <值> )
列名可以不指定,但是如果不指定的话,必须在每个属性列上均有值,且values子句中值的排列顺序要和表中各属性列的排列顺序一致。
例:在S表中添加一条学生记录(学号:S7、姓名:郑东、性别:女、年龄:21、系别:计算机)
insert into S (SNo, SN, Age, Sex, Dept) values ('S7', '郑东', 21, '女', '计算机')
2)添加一行记录的部分数据值
例:在SC表中添加一条选课记录(’S7‘, ’C1')
insert into SC (SNo, CNo) values ('S7', 'C1')
3)添加多行记录
添加多行记录用于表间的拷贝,即将一张表中的数据抽取数行添加到另一张表中,可以通过子查询实现。
添加数据的命令语法格式为:
insert into <表名> [ (< 列名1>[, <列名2>] ) ] 子查询
例:求出各个系教师的平均工资,把结果存放在新表AvgSal中。
首先创建一张AvgSal表:
create table AvgSal(Department varchar(20),Average int)
然后利用子查询求出表T中各个系的平均工资,把结果存入新表AvgSal中。
insert into AvgSal select Dept, avg(Sal) from T group by Dept
2. 修改数据
使用SQL的update语句对表中的一行或多行记录的某些列值进行修改,其语法格式为:
update <表名> set <列名>=<表达式> [ , <列名>=<表达式> ]... [ where <条件> ]
1)修改一行数据
例:把刘伟老师转到信息系。
update T set Dept='信息' where TN='刘伟'
2)修改多行数据
例1:将所有的学生的年龄增加1岁。
update S set Age=Age+1
例2:把教师表中工资小于或等于1000元的讲师的工资提高20%。
update T set Sal = Sal *1.2 where Sal<=1000 and Prof='讲师'
3)用子查询选择要修改的行。
例1:把讲授C5课程的教师的岗位津贴增加100元。
update T set Comm=Comm+100 where TNo = any (select TNo from TC where CNo='C5')
例2: 把所有教师的工资提高到平均工资的1.2倍.
update T set Sal = (select avg(Sal)*1.2 from T )
3. 删除数据
使用SQL的delete语句可以删除表中的一行或多行记录,其语法格式为:
delete from <表名> [ where <条件> ]
注:当省略where子句时,则删除表中的所有记录。
1)删除一行记录
例:删除刘伟老师的记录。
delete from T where TN='刘伟'
2)删除多行记录
例:删除所有教师的授课记录。
delete from TC
3)利用子查询选择要删除的行
例:删除刘伟老师的授课记录。
delete from TC where TNo = (select TNo from T where TN='刘伟')
- 标准SQL语句(6) --- 数据的增删改
- 标准SQL语句(1)--- 数据库的增删改
- 标准SQL语句(2)--- 表的增删改
- 操作DB~~对数据的增删改查!!sql语句
- mysql 之 sql 语句 之 数据的增删改查
- Oracle实现数据增删改的sql语句实例
- 操作DB ~~对数据的增删改查!!sql语句 (二)
- sql增删改语句
- SQL Server 2008中文版标准教程读书笔记 表数据的增删改查(复习SQL Server 四)
- SQL语句的增删改查(详细)
- SQL语句的增删改查(详细)
- SQL语句的增删改查(详细)
- SQL语句的增删改查(详细)
- 数据库SQL语句的增删改查(总结)
- SQL语句的增删改查(详细)
- SSM-Mybatis的SQL(增删改查)语句
- SQL语句增删改表的字段
- SQL语句的增删改查
- BlueTooth: 浅析CC2540的OSAL原理
- PAT A 1034. Head of a Gang (30)
- 30天制作操作系统之挑战指针
- uva 11536 - Smallest Sub-Array(two pointers)
- ubuntu12.04使用root登陆的简单设置
- 标准SQL语句(6) --- 数据的增删改
- JAVA动态代理
- 题目1111:单词替换
- MSSQL2008 R2使用中问题
- 定制iOS 7中的导航栏和状态栏
- 中控指纹考勤机软件登录用户名和密码忘记的解决办法
- 华为麦芒B199全焦拍照 比单反还有料
- “净网”行动进行中,多管齐下才能力挫“低俗”
- BlueTooth: CC2540 BLE PeripheralBroadcaster Example(蓝牙4.0从机和广播者多角色实例)