SQL UPDATE语句的用法(附带实例)
在 MySQL/MariaDB 数据库中,修改数据表中的数据可以直接使用 UPDATE 语句来实现,其语法格式为:
接下来给出两个修改表中数据的示例,注意看其中的区别:
UPDATE 表名 SET 字段1=替换内容[, 字段2=替换内容, ...] [WHERE...] ...;各字段的含义如下:
- 表名:指定要修改哪个表中的数据。
- SET:关键字,指定要修改哪个字段中的数据。
- 字段1=替换内容[, 字段2=替换内容,...]:具体的字段名和要替换的值,若修改多个字段,可用英文逗号进行分隔。
- [WHERE...]:可选项,用来指定修改表中符合查询条件的行。若不指定,则默认修改指定字段下的所有数据记录。
- ...:其他辅助选项,例如 [ORDER BY...]、[LIMIT...] 等。
接下来给出两个修改表中数据的示例,注意看其中的区别:
##修改 english 字段中的所有值,都将其改为 60 MariaDB [test01]> update stu_score set english=60; Query OK, 5 rows affected (0.122 sec) Rows matched: 5 Changed: 5 Warnings: 0 MariaDB [test01]> select * from stu_score; +--------+--------+--------+------------+------------+ | stu_id | name | english| mathematics| geography | +--------+--------+--------+------------+------------+ | 2 | 小刘 | 60 | 58 | 74 | | 1 | 小孙 | 60 | 444 | 96 | | 3 | 小崔 | 60 | 76 | 48 | | 4 | 小狗 | 60 | 39 | 69 | | 5 | 小猫 | 60 | NULL | NULL | +--------+--------+--------+------------+------------+ 5 rows in set (0.000 sec) ##修改表中 stu_id=3 那一行的数据记录,将那一行 mathematics 字段中的值改为 99 MariaDB [test01]> update stu_score set mathematics=99 where stu_id=3; Query OK, 1 row affected (0.001 sec) Rows matched: 1 Changed: 1 Warnings: 0 MariaDB [test01]> select * from stu_score; +--------+--------+--------+------------+------------+ | stu_id | name | english| mathematics| geography | +--------+--------+--------+------------+------------+ | 2 | 小刘 | 60 | 58 | 74 | | 1 | 小孙 | 60 | 44 | 96 | | 3 | 小崔 | 60 | 99 | 48 | | 4 | 小狗 | 60 | 39 | 69 | | 5 | 小猫 | 60 | NULL | NULL | +--------+--------+--------+------------+------------+ 5 rows in set (0.000 sec)一般在企业中使用 UPDATE 语句修改数据库时经常会与 WHERE 语句配合起来使用,用来修改指定行的数据记录,修改的行可能是一行,也可能是多行,视 WHERE 查询条件而定。