当前位置: 首页 > news >正文

更新、修改

MySQL从小白到总裁完整教程目录:https://blog.csdn.net/weixin_67859959/article/details/129334507?spm=1001.2014.3001.5502

语法:

update 表名 列名=该列新值, 列名=该列新值, ... where 记录匹配条件;

说明:update  更新、修改
             set     设置
             如果不写where条件,表示对所有行都操作!

比如:

案例:更新test03表,针对日期(etime)是2022-06-01的记录,将姓名(name)改为mary

update test03 set name='Mary' where etime='2022-06-01';

 结果:

mysql> select * from test03;
+------+------+--------+------------+---------+
| name | age  | salary | etime      | address |
+------+------+--------+------------+---------+
| king |   20 | 999.00 | NULL       | NULL    |
| tom  |   23 |   NULL | 2022-06-30 | NULL    |
| rose | NULL |   NULL | NULL       | 北京    |
| NULL |   19 | 777.00 | 2022-06-01 | NULL    |
| lucy |   21 |  88.00 | NULL       | 上海    |
+------+------+--------+------------+---------+
5 rows in set (0.05 sec)mysql> update test03 set name='Mary' where etime='2022-06-01';
Query OK, 1 row affected (0.04 sec)
Rows matched: 1  Changed: 1  Warnings: 0mysql> select * from test03;
+------+------+--------+------------+---------+
| name | age  | salary | etime      | address |
+------+------+--------+------------+---------+
| king |   20 | 999.00 | NULL       | NULL    |
| tom  |   23 |   NULL | 2022-06-30 | NULL    |
| rose | NULL |   NULL | NULL       | 北京    |
| Mary |   19 | 777.00 | 2022-06-01 | NULL    |
| lucy |   21 |  88.00 | NULL       | 上海    |
+------+------+--------+------------+---------+
5 rows in set (0.00 sec)

 

练习:更新test03表,针对姓名(name)是rose的记录,将年龄(age)改为108岁

mysql> select * from test03;
+------+------+--------+------------+---------+
| name | age  | salary | etime      | address |
+------+------+--------+------------+---------+
| king |   20 | 999.00 | NULL       | NULL    |
| tom  |   23 |   NULL | 2022-06-30 | NULL    |
| rose | NULL |   NULL | NULL       | 北京    |
| Mary |   19 | 777.00 | 2022-06-01 | NULL    |
| lucy |   21 |  88.00 | NULL       | 上海    |
+------+------+--------+------------+---------+
5 rows in set (0.00 sec)mysql> update test03 set age=108 where name='rose';
Query OK, 1 row affected (0.02 sec)
Rows matched: 1  Changed: 1  Warnings: 0mysql> select * from test03;
+------+------+--------+------------+---------+
| name | age  | salary | etime      | address |
+------+------+--------+------------+---------+
| king |   20 | 999.00 | NULL       | NULL    |
| tom  |   23 |   NULL | 2022-06-30 | NULL    |
| rose |  108 |   NULL | NULL       | 北京    |
| Mary |   19 | 777.00 | 2022-06-01 | NULL    |
| lucy |   21 |  88.00 | NULL       | 上海    |
+------+------+--------+------------+---------+
5 rows in set (0.00 sec)

练习:更新test03表,针对日期(etime)是2022-06-30的记录,将工资(salary)修改为999,地址(address)变更为广州  

mysql> select * from test03;
+------+------+--------+------------+---------+
| name | age  | salary | etime      | address |
+------+------+--------+------------+---------+
| king |   20 | 999.00 | NULL       | NULL    |
| tom  |   23 |   NULL | 2022-06-30 | NULL    |
| rose |  108 |   NULL | NULL       | 北京    |
| Mary |   19 | 777.00 | 2022-06-01 | NULL    |
| lucy |   21 |  88.00 | NULL       | 上海    |
+------+------+--------+------------+---------+
5 rows in set (0.00 sec)mysql> update test03 set salary=999, address='广州'-> where etime='2022-06-30';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0mysql>
mysql> #查询验证
mysql> select * from test03;
+------+------+--------+------------+---------+
| name | age  | salary | etime      | address |
+------+------+--------+------------+---------+
| king |   20 | 999.00 | NULL       | NULL    |
| tom  |   23 | 999.00 | 2022-06-30 | 广州    |
| rose |  108 |   NULL | NULL       | 北京    |
| Mary |   19 | 777.00 | 2022-06-01 | NULL    |
| lucy |   21 |  88.00 | NULL       | 上海    |
+------+------+--------+------------+---------+
5 rows in set (0.00 sec)

案例:针对test03表,将所有记录的日期(etime)都改为2022-01-01

分析:更新语句中,不写where子句,表示对所有的行的指定列进行修改!

mysql> update test03 set etime='2022-01-01';
Query OK, 5 rows affected (0.03 sec)
Rows matched: 5  Changed: 5  Warnings: 0mysql> select * from test03;
+------+------+--------+------------+---------+
| name | age  | salary | etime      | address |
+------+------+--------+------------+---------+
| king |   20 | 999.00 | 2022-01-01 | NULL    |
| tom  |   23 | 999.00 | 2022-01-01 | 广州    |
| rose |  108 |   NULL | 2022-01-01 | 北京    |
| Mary |   19 | 777.00 | 2022-01-01 | NULL    |
| lucy |   21 |  88.00 | 2022-01-01 | 上海    |
+------+------+--------+------------+---------+
5 rows in set (0.00 sec)

 练习:针对test03表,将地址(address)为北京的记录,工资(salary)改为666

mysql> update test03 set salary=666 where address='北京';
Query OK, 1 row affected (0.02 sec)
Rows matched: 1  Changed: 1  Warnings: 0mysql> select * from test03;
+------+------+--------+------------+---------+
| name | age  | salary | etime      | address |
+------+------+--------+------------+---------+
| king |   20 | 999.00 | 2022-01-01 | NULL    |
| tom  |   23 | 999.00 | 2022-01-01 | 广州    |
| rose |  108 | 666.00 | 2022-01-01 | 北京    |
| Mary |   19 | 777.00 | 2022-01-01 | NULL    |
| lucy |   21 |  88.00 | 2022-01-01 | 上海    |
+------+------+--------+------------+---------+
5 rows in set (0.00 sec)

 

http://www.lryc.cn/news/174576.html

相关文章:

  • 山西电力市场日前价格预测【2023-09-25】
  • 从collections库的Counter类看items()方法和enumerate()方法
  • 2023-09-24 LeetCode每日一题(LRU 缓存)
  • 《计算机视觉中的多视图几何》笔记(10)
  • 【一、虚拟机vmware安装】
  • uniapp 离线打包 plus.runtime.install 安装页面不弹起
  • Docker 自动化部署(保姆级教程)
  • 北工大汇编题——分支程序设计
  • 贴片电容耐压值选取和特性(包含实际电路和PCB)
  • 【云原生】kubernetes中pod(进阶)
  • Cesium 问题:获取高度值,高度值又是相对于谁来说的
  • 第三、四、五场面试
  • 力扣-290.单词规律
  • 常见限流算法学习
  • JS面试相关
  • SSRF漏洞
  • Qt5开发及实例V2.0-第十八章-Qt-MyselfQQ实例
  • 当下IT测试技术员的求职困境
  • MR混合现实情景实训教学
  • 嵌入式C++总结
  • C语言之内存函数篇(3)
  • java面试题-学成在线项目
  • ViewBinding——Android之视图绑定
  • vue学习-04vue的props配置项和mixin混入
  • 九、多项式朴素贝叶斯算法(Multinomial NB,Multinomial Naive Bayes)(有监督学习)
  • 数据结构上机练习——单链表的基本操作、头文件、类定义、main函数、多种链表算法的实现,含注释
  • 如何通过AI视频智能分析技术,构建着装规范检测/工装穿戴检测系统?
  • C语言自定义类型(上)
  • Python - 小玩意 - 圣诞树背景音乐弹窗
  • The 2023 ICPC Asia Regionals Online Contest (1) E. Magical Pair(数论 欧拉函数)