SQL Update語句


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列,並在SALARY500000的行中將值設定為「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_ID5

語法

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