PostgreSQL-업데이트 쿼리

PostgreSQL UPDATE쿼리는 테이블의 기존 레코드를 수정하는 데 사용됩니다. UPDATE 쿼리와 함께 WHERE 절을 사용하여 선택한 행을 업데이트 할 수 있습니다. 그렇지 않으면 모든 행이 업데이트됩니다.

통사론

WHERE 절을 사용하는 UPDATE 쿼리의 기본 구문은 다음과 같습니다.

UPDATE table_name
SET column1 = value1, column2 = value2...., columnN = valueN
WHERE [condition];

AND 또는 OR 연산자를 사용하여 N 개의 조건을 결합 할 수 있습니다.

다음과 같은 레코드가있는 COMPANY 테이블을 고려하십시오.

testdb# select * from COMPANY;
 id | name  | age | address   | salary
----+-------+-----+-----------+--------
  1 | Paul  |  32 | California|  20000
  2 | Allen |  25 | Texas     |  15000
  3 | Teddy |  23 | Norway    |  20000
  4 | Mark  |  25 | Rich-Mond |  65000
  5 | David |  27 | Texas     |  85000
  6 | Kim   |  22 | South-Hall|  45000
  7 | James |  24 | Houston   |  10000
(7 rows)

다음은 ID가 6 인 고객의 ADDRESS를 업데이트하는 예입니다.

testdb=# UPDATE COMPANY SET SALARY = 15000 WHERE ID = 3;

이제 COMPANY 테이블에는 다음과 같은 레코드가 있습니다.

id | name  | age | address    | salary
----+-------+-----+------------+--------
  1 | Paul  |  32 | California |  20000
  2 | Allen |  25 | Texas      |  15000
  4 | Mark  |  25 | Rich-Mond  |  65000
  5 | David |  27 | Texas      |  85000
  6 | Kim   |  22 | South-Hall |  45000
  7 | James |  24 | Houston    |  10000
  3 | Teddy |  23 | Norway     |  15000
(7 rows)

COMPANY 테이블의 모든 ADDRESS 및 SALARY 열 값을 수정하려는 경우 WHERE 절을 사용할 필요가 없으며 UPDATE 쿼리는 다음과 같습니다.

testdb=# UPDATE COMPANY SET ADDRESS = 'Texas', SALARY=20000;

이제 COMPANY 테이블에는 다음과 같은 레코드가 있습니다.

id | name  | age | address | salary
----+-------+-----+---------+--------
  1 | Paul  |  32 | Texas   |  20000
  2 | Allen |  25 | Texas   |  20000
  4 | Mark  |  25 | Texas   |  20000
  5 | David |  27 | Texas   |  20000
  6 | Kim   |  22 | Texas   |  20000
  7 | James |  24 | Texas   |  20000
  3 | Teddy |  23 | Texas   |  20000
(7 rows)