Name
UPDATE
Synopsis
UPDATE [LOW_PRIORITY] [IGNORE]table
SETcolumn
=expression
[, ...] [WHEREcondition
] [ORDER BY {column
|expression
|position
} [ASC|DESC], ...] [LIMIT {[offset
,]count
|count
OFFSEToffset
}] UPDATE [LOW_PRIORITY] [IGNORE]table_reference
SETcolumn
=expression
[, ...] [WHEREcondition
]
This statement changes existing rows of data in a table. The first syntax shown updates only one table per statement. The second syntax can be used to update or reference data in multiple tables from one statement. Explanations of both types of statements and examples of their use follow.
Single table UPDATE
UPDATE [LOW_PRIORITY] [IGNORE]table
SETcolumn
=expression
[, ...] [WHEREcondition
] [ORDER BY {column
|expression
|position
} [ASC|DESC], ...] [LIMIT {[offset
,]count
|count
OFFSEToffset
}]
This syntax changes a single table. The
SET
clause specifies each column that should change
and the value to which it is to be set, separated by an equals sign.
The value can be a static value or an expression. If a column in a
table is defined as NOT NULL
, and if an
UPDATE
statement then sets its value to NULL, the
default value for the column will be used if it is available;
otherwise, an error is generated.
The LOW_PRIORITY
keyword may be used to instruct the server to wait until all
other queries related to the table in which data is to be added are
completed before running the UPDATE
statement. When
the table is free, it will be locked for the UPDATE
statement and thereby prevent concurrent data updates ...
Get MySQL in a Nutshell, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.