UPDATE
SQL - Language Statements
UPDATE
update rows of a table
UPDATE [ ONLY ] table SET column = { expression | DEFAULT } [, ...]
[ FROM fromlist ]
[ WHERE condition ]
Description
UPDATE changes the values of the specified
columns in all rows that satisfy the condition. Only the columns to
be modified need be mentioned in the statement; columns not explicitly
SET> retain their previous values.
By default, UPDATE will update rows in the
specified table and all its subtables. If you wish to only update
the specific table mentioned, you must use the ONLY>
clause.
You must have the UPDATE privilege on the table
to update it, as well as the SELECT
privilege to any table whose values are read in the
expressions or
condition.
Parameters
table
The name (optionally schema-qualified) of the table to update.
column
The name of a column in table.
expression
An expression to assign to the column. The expression may use the
old values of this and other columns in the table.
DEFAULT
Set the column to its default value (which will be NULL if no
specific default expression has been assigned to it).
fromlist
A list of table expressions, allowing columns from other tables
to appear in the WHERE> condition and the update expressions.
condition
An expression that returns a value of type boolean.
Only rows for which this expression returns true>
will be updated.
Diagnostics
UPDATE count
Message returned if successful. The value count is the number of rows
updated. If count
is 0, no rows were updated.
Examples
Change the word Drama> to Dramatic> in the
column kind> of the table films:
UPDATE films SET kind = 'Dramatic' WHERE kind = 'Drama';
Adjust temperature entries and reset precipitation to its default
value in one row of the table weather:
UPDATE weather SET temp_lo = temp_lo+1, temp_hi = temp_lo+15, prcp = DEFAULT
WHERE city = 'San Francisco' AND date = '2003-07-03';
Compatibility
This command conforms to the SQL standard. The
FROM clause is a PostgreSQL extension.