如果我们要修改数据库中表的数据,这个时候我们就要使用到UPDATE语句。

UPDATE语句的基本语法是:

UPDATE <表名> SET 字段1=值1, 字段2=值2, ... WHERE ...;

例如,我们想更新employees表id=100的记录的last_name和salary这两个字段,先写出UPDATE employees SET name=”大哥”, salary = 54000,然后在WHERE子句中写出需要更新的行的筛选条件id=100:

      即UPDATE employees SET last_name='大哥', salary=54000 WHERE employee_id=100;

--修改前:

 

--修改后:

 

在这里我们发现UPDATE语句的WHERE条件和SELECT语句的WHERE条件其实是一样的,因此完全可以一次更新多条记录:

 

UPDATE employees SET last_name='TEST', salary=54000 WHERE employee_id>=101 and employee_id<=105;

 

--修改前:

--修改后:

 

在UPDATE语句中,我们在更新字段时还可以使用表达式。

例如,把所有50000元以上工资的员工加666元:

UPDATE employees SET salary=54000+666 WHERE salary >= 50000;

--查询结果

 

其中,SET salary=54000+666就是给当前行的salary字段的值加上了666。

如果WHERE条件没有匹配到任何记录,UPDATE语句不会报错,但是也不会有任何记录被更新。

UPDATE语句可以没有WHERE条件,例如:

UPDATE employees SET salary=54000+666

这个时候,整个表的所有记录都会被更新。所以,在执行UPDATE语句时要非常小心,最好先用SELECT语句来测试WHERE条件是否筛选出了期望的记录集,然后再用UPDATE进行更新。

更多推荐

SQL修改语句