数据的修改

  • UPDATE

  • 格式

    • UPDATE 表名

    • SET 字段名 = 字段值(这个可以是表达式)

      [WHERE 条件表达式]

    • 关系运算符 (>、<、>=、 <=、=、<> : 这个是不等于)

    • 逻辑运算符( AND 与、OR 或、 NOT 非)

    • 特殊关系运算符

      • IN, 在集合中,如

jiguan IN('北京', '上海', '广州')
表示是北京、上海、广州之一
      • NOT IN,不在集合中,如,
jiguan NOT IN('北京', '上海', '广州')
jiguan不是北,上, 广
      • IS NULL, 判别空
jiguan IS NULL
      • IS NOT NULL, 判别非空
jiguan IS NOT NULL
    • BETWEEN, 在某个范围内
score BETWEEN  AND 
    • NOT BETWEEN, 不在某个范围内
age NOT BETWEEN  AND 
    • LIKE, 与某种模式匹配
name LIKE '%瑞%'   -- 名字里含有 瑞 的人
name LIKE '张%' -- 姓张的那些人
    • NOT LIKE, 与某种模式不匹配
name NOT LIKE '张%' AND NOT LIKE '王%'  -- 姓里没有张和王的
  • 通配符

    • 模式

      • name LIKE '张%'** -- 第一个字是张,后面是任意字符

    • %, 代表任意个字符

    • _ , 代表一个任意字符

      • name LIKE '张_' -- 名字是两个字,姓张

  • 实例

--将学生表student中的班级名“电气”改为“电气61”,SQL中这样写
use teaching -- 使用数据库 SELECT * FROM Student UPDATE Student
SET sclass = '电气61'
WHERE sclass = '电气51' -- 将电气51全部修改成电气61 SELECT * FROM Student -- 查询结果 --将19,20岁的人的年龄加一岁
UPDATE Student
SET sage = sage +
WHERE sage IN (, ) -- 把(19和20)岁的人,年龄加一 SELECT * FROM Student -- 查询结果 -- 设置张瑞平的出生日期为 1995-04-8
UPDATE Student
SET sbirthday = '1995-4-8'
WHERE sname = '张瑞平' SELECT * FROM Student -- 查询结果 -- 插入数据
INSERT INTO Student(sclass, snumb, sname, sage, sbirthday, sgender)
VALUES('电气51', '', '豆豆', , '1997-8-22', '男')
SELECT * FROM Student --修改豆子的生日和年龄
UPDATE Student
SET sbirthday = '1997-7-20'
WHERE sname = '豆子' UPDATE Student
SET sage =
WHERE sname = '豆子' SELECT * FROM Student -- 查询结果 ----------------------------------------------------------- --计算年龄为空的人的年龄
UPDATE Student
---- datediff()计算关于年的差值(sbir,getdate)
---- getdate()能获得当前日期
SET sage = DATEDIFF(year, sbirthday, GETDATE())
-- 将年龄为空的,计算出他的年龄
WHERE sage IS NULL SELECT * FROM Student -- 查询结果 --将年龄在20-22之间的人的年龄减少1岁
UPDATE Student
SET sage = sage -
WHERE sage BETWEEN AND SELECT * FROM Student -- 查询结果
  • 更新多个字段

  • UPDATE

  • 格式

    • UPDATE 表名

      SET 字段名1 = 字段值1 [,

      字段名2 = 字段值2]

      [, ...n]

      [WHERE 条件表达式]

  • 实例

--修改多个字段

--要修改3号同学的班级和名字分别为 物理51  和 笑苍天
UPDATE Student
SET sclass = '物理51',
sname = '笑苍天'
WHERE snumb = '' SELECT * FROM Student -- 查询结果
  • 删除数据

  • 一般格式

    • DELETE FROM 表名

      [WHERE 条件]

  • 实例

--删除物理51班的学生信息
DELETE FROM Student
WHERE sclass = '物理51' SELECT * FROM Student -- 查询结果 --删除全部数据!!
DELETE FROM Student

SQL语句(五)数据的修改的更多相关文章

  1. 数据库-SQL语句:删除和修改语句-列类型-列约束

    使用MySQL客户端连接服务器的两种方式: (1)交互模式: ——查 mysql.exe  -h127.0.0.1  -uroot  -p mysql   -uroot (2)脚本模式:——增删改 m ...

  2. SQL语句之 数据约束

    SQL语句之 数据约束 什么是数据约束 数据约束用来限制用户对数据的非法的修改操作. 1.约束字段的默认值 如果插入记录时,没有给某个字段赋值,那么我们可以设置它的默认值 关键字:default CR ...

  3. SQL Server对数据进行修改

    SQL Server对数据进行修改,修改数据库中的数据. auto"> <tr style="background:red"> <td>编号 ...

  4. SQL语句增加列、修改列、删除列

    SQL语句增加列.修改列.删除列 1.增加列: 1.alter table tableName add columnName varchar(30) 2.ALTER TABLE dbo.doc_exa ...

  5. PHP如何通过SQL语句将数据写入MySQL数据库呢?

    1,php和MySQL建立连接关系 2,打开 3,接受页面数据,PHP录入到指定的表中 1.2两步可直接使用一个数据库链接文件即可:conn.php <?phpmysql_connect(&qu ...

  6. 通过Sql语句导数据

    在通过SQL Server向导中的SQL语句导数据时,默认情况下源表中的nvarchar字段类型会变成202,解决此问题的方法是,要重新选择一下对应的数据接收表.

  7. 使用SQL语句进行数据复制

    使用SQL语句对数据或者表进行复制,一般用于两张表结构相同的时候使用. SQL Server中,如果目标表存在: insert into 目标表 select * from 原表; SQL Serve ...

  8. Oracl 一条sql语句 批量添加、修改数据

    最近一直在用,也一直在学oralc,项目上也用到了批量的添加(读取上传CSV文件信息,把符合条件的信息写入到数据库中),在写的时候想到了可能是数据量大就想该怎么快,(由于本人在.NET开发期间没有做过 ...

  9. sql语句百万数据量优化方案

    一:理解sql执行顺序 在sql中,第一个被执行的是from语句,每一个步骤都会产生一个虚拟表,该表供下一个步骤查询时调用,比如语句:select top 10 column1,colum2,max( ...

  10. mysql详解常用命令操作,利用SQL语句创建数据表—增删改查

    关系型数据库的核心内容是 关系 即 二维表 MYSQL的启动和连接show variables; [所有的变量] 1服务端启动 查看服务状态 sudo /etc/init.d/mysql status ...

随机推荐

  1. windows 与linux 上面PG的简单验证

    0.0 目的 验证一下 windows 上面 和linux上面的数据文件是否可以 冷备份 恢复. 1 方法关闭 windows机器上面postgresql 的服务 我这边是PG10.4 可以使用命令 ...

  2. String()与toString的区别

    1..toString()可以将所有的的数据都转换为字符串,但是要排除null 和 undefined 代码示例: var a = null.toString()--报错 var b = underf ...

  3. 关于ArcGIS常用功能的实现

    关于ArcGIS中常见的一些功能的总结,一般首先在前台中放置地图,代码如下所示: <esri:Map Grid.Row="0" Grid.Column="0&quo ...

  4. WPF 如何控制右键菜单ContextMenu的弹出

    在具体做一些项目的时候,有时候需要需要先左键点击某个节点,然后再右键点击节点的时候才弹出右键菜单,所以直接右键点击时需要禁用掉右键菜单,这里比如我们为Grid添加了ContextMenu,但是我们需要 ...

  5. 一本通1601【例 5】Banknotes

    1601:[例 5]Banknotes 时间限制: 1000 ms         内存限制: 524288 KB [题目描述] 原题来自:POI 2005 Byteotian Bit Bank (B ...

  6. VMWare 安装 Linux

    参考 : http://www.aboutyun.com/thread-6780-1-1.html     这的是很详细.赞一下 我这里就简化一下. 1 下载: VMWare :  https://d ...

  7. 经典Java面试题收集(二)

    经典的Java面试题(第二部分),这部分主要是与Java Web和Web Service相关的面试题. 96.阐述Servlet和CGI的区别? 答:Servlet与CGI的区别在于Servlet处于 ...

  8. Java11实战:模块化的 Netty RPC 服务项目

    Java11实战:模块化的 Netty RPC 服务项目 作者:枫叶lhz链接:https://www.jianshu.com/p/19b81178d8c1來源:简书简书著作权归作者所有,任何形式的转 ...

  9. 自学Zabbix12.1 Zabbix命令-zabbix_server

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix12.1 Zabbix命令-zabbix_server 1. zabbix核心:z ...

  10. BZOJ 1778: [Usaco2010 Hol]Dotp 驱逐猪猡

    1778: [Usaco2010 Hol]Dotp 驱逐猪猡 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 563  Solved: 216[Submi ...