数据的修改

  • 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. rgb & rgba convert

    rgb & rgba convert RGB color to Hex, Pantone, RAL, HSL, HSV, HSB, JSON. Get color scheme. https: ...

  2. XE2 运行时 item not found的解决办法

    .net类库的原因. 将C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG下面的 machine.config.default 改名为machin ...

  3. ThreadLocal的使用场景及实现原理

    1. 什么是ThreadLocal? 线程局部变量(通常,ThreadLocal变量是private static修饰的,此时ThreadLocal变量相当于成为了线程内部的全局变量) 2. 使用场景 ...

  4. java 里面的 native 方法

    第一篇: 今天花了两个小时把一份关于什么是Native Method的英文文章好好了读了一遍,以下是我依据原文的理解. 一. 什么是Native Method   简单地讲,一个Native Meth ...

  5. 使用libcurl 发送post请求

    SendHttpPost(string& strUrl, string& strPost, string& strResponse, int nTimeOut) { CURLc ...

  6. BZOJ2938[Poi2000]病毒——AC自动机

    题目描述 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码.如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的.现在委员会已经找出了所有的病毒代码段,试问,是否 ...

  7. C# SFTP

    最近需要通过SFTP来获取文件. 下面是我整理的相关信息. 以下只是大致代码,大家看看就行了. 我的是window service.每天会去下载文件. 1  下载 Renci.SshNet 通过 nu ...

  8. MT【234】正方形染色(二)

    有$n$个正方形排成一行,今用红,白,黑三种颜色给这$n$个正方形染色,每个正方形只能染一种颜色.如果要求染这三种颜色的正方形都是偶数个,问有多少种不同的染色方法. 解答: 设有$a_n$种不同的染法 ...

  9. luogu2865 路障 (dijkstra)

    求次短路,dijkstra时同时记下到某点的最短距离和次短距离即可. #include<cstdio> #include<cstring> #include<algori ...

  10. JS循环中使用bind函数的参数传递问题

    JS循环中使用bind函数的参数传递问题,问题代码如下: for (var sc in result) { var tempp = '<div class="sidebar_todo_ ...