SQL UPDATE语句用于修改数据库中已有的数据。 WHERE子句中的条件决定要更新哪一行。
语法
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
假设有一个EMPLOYEE表,它的结构和数据记录如下所示 -
| EMP_ID | EMP_NAME | CITY | SALARY | AGE |
|---|---|---|---|---|
| 1 | Angelina | Chicago | 200000 | 30 |
| 2 | Robert | Austin | 300000 | 26 |
| 3 | Christian | Denver | 100000 | 42 |
| 4 | Kristen | Washington | 500000 | 29 |
| 5 | Russell | Los angels | 200000 | 36 |
| 6 | Marry | Canada | 600000 | 48 |
更新单个记录
更新EMP_NAME列,并在SALARY为500000的行中将值设置为“Emma”。
语法
UPDATE table_name
SET column_name = value
WHERE condition;
查询语句 -
UPDATE EMPLOYEE
SET EMP_NAME = 'Emma'
WHERE SALARY = 500000;
执行此查询后,EMPLOYEE 表将如下所示:
| EMP_ID | EMP_NAME | CITY | SALARY | AGE |
|---|---|---|---|---|
| 1 | Angelina | Chicago | 200000 | 30 |
| 2 | Robert | Austin | 300000 | 26 |
| 3 | Christian | Denver | 100000 | 42 |
| 4 | Emma | Washington | 500000 | 29 |
| 5 | Russell | Los angels | 200000 | 36 |
| 6 | Marry | Canada | 600000 | 48 |
更新多条记录
如果要更新多个列,则应将用逗号分配的每个字段分开。 在EMPLOYEE表中,将EMP_NAME列更新为“Kevin”,将CITY更新为“Boston”,指定EMP_ID为5。
语法
UPDATE table_name
SET column_name = value1, column_name2 = value2
WHERE condition;
查询语句
UPDATE EMPLOYEE
SET EMP_NAME = 'Kevin', City = 'Boston'
WHERE EMP_ID = 5;
查询结果 -
| EMP_ID | EMP_NAME | CITY | SALARY | AGE |
|---|---|---|---|---|
| 1 | Angelina | Chicago | 200000 | 30 |
| 2 | Robert | Austin | 300000 | 26 |
| 3 | Christian | Denver | 100000 | 42 |
| 4 | Kristen | Washington | 500000 | 29 |
| 5 | Kevin | Boston | 200000 | 36 |
| 6 | Marry | Canada | 600000 | 48 |
不使用WHERE子句
如果要更新表中的所有行,则不需要使用WHERE子句。 在EMPLOYEE表中,将EMP_NAME列更新为“Harry”。
语法
UPDATE table_name
SET column_name = value1;
查询语句如下 -
UPDATE EMPLOYEE
SET EMP_NAME = 'Harry';
执行上面语句,得到以下结果 -
| EMP_ID | EMP_NAME | CITY | SALARY | AGE |
|---|---|---|---|---|
| 1 | Harry | Chicago | 200000 | 30 |
| 2 | Harry | Austin | 300000 | 26 |
| 3 | Harry | Denver | 100000 | 42 |
| 4 | Harry | Washington | 500000 | 29 |
| 5 | Harry | Los angels | 200000 | 36 |
| 6 | Harry | Canada | 600000 | 48 |
上一篇:
SQL INSERT语句
下一篇:
SQL DELETE语句
