数据的修改

  • 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. Redis交互编程语言及客户端

    Redis Desktop Manager https://redisdesktop.com/download Redis Clients https://redis.io/clients/     ...

  2. php多进程pcntl学习-僵尸进程

    上个月写的文章,php多进程pcntl学习(一)现在发现并不完整,因为虽然提到了关闭子进程,但是并没有回收子进程,简单的说就是当子进程比父进程先退出,而父进程没对其做任何处理的时候,子进程将会变成僵尸 ...

  3. SQLSERVER 2014 内存优化表相关

    更新了SP2的补丁能够解决  不能收缩日志文件的bug了. 但是因为已经不用内存优化表了, 所以想着能够删除内存优化表的file group 但是发现 很难删除 先说结论: 以下是针对内存优化文件组的 ...

  4. TFS2018 linux Agent的安装

    1. 感谢徐蕾老师的文档,根据文档简单学会了TFS agent的安装,在此简单记录一下: 前置条件: CentOS7.4 or CentOS7.5的版本 安装的软件有git 2.17 dotnet s ...

  5. 关于utf8mb4的学习了解笔记

    占位下班写 据说可以存储emoji ..妈蛋今天大神又秀我一脸 大概意思是,我们整个后端数据库,最近都升级了编码格式.从以前久的utf-8整个升级到了utf8mb4的格式 该格式支持emoji表情. ...

  6. spring学习总结(一)_Ioc基础(上)

    最近经历了许许多多的事情,学习荒废了很久.自己的目标成了摆设.现在要奋起直追了.最近发现了张果的博客.应该是一个教师.看了他写的spring系列的博客,写的不错.于是本文的内容参考自他的博客,当然都是 ...

  7. Code POJ - 1780(栈模拟dfs)

    题意: 就是数位哈密顿回路 解析: 是就算了...尼玛还不能直接用dfs,得手动开栈模拟dfs emm...看了老大半天才看的一知半解 #include <iostream> #inclu ...

  8. MT【225】两平行直线夹曲线

    已知函数$f(x)=x^3-3ax,(x\in(0,1))$若关于$x$的不等式$|f(x)|\le \dfrac{1}{4}$恒成立,求实数$a=$____ 方法一:代数法,转化成恒成立问题,略.方 ...

  9. 【BZOJ2299】[HAOI2011]向量(数论)

    [BZOJ2299][HAOI2011]向量(数论) 题面 BZOJ 洛谷 题解 首先如果我们的向量的系数假装可以是负数,那么不难发现真正有用的向量只有\(4\)个,我们把它列出来.\((a,b)(a ...

  10. 在任意位置获取应用程序CONTEXT

    Android程序中访问资源时需要提供Context,一般来说只有在各种component中(Activity, Provider等等)才能方便的使用api来获取Context, 而在某些工具类中要获 ...