UPDATE
{
table_name WITH ( <table_hint_limited> [ ...n ] )
| view_name
| rowset_function_limited
}
SET
{
column_name = { expression | DEFAULT | NULL }
| @variable = expression
| @variable = column = expression
} [ ,...n ]
{
{
[ FROM { <table_source> } [ ,...n ] ]
[ WHERE <search_condition> ]
}
|
[ WHERE CURRENT OF
{
{ [ GLOBAL ] cursor_name }
| cursor_variable_name
}
]
}
[ OPTION ( <query_hint> [ ,...n ] ) ]
|
<table_source> ::=
table_name [ [AS] table_alias ] [ WITH ( <table_hint> [ ,...n ] ) ]
| view_name [ [ AS ] table_alias ]
| rowset_function [ [ AS ] table_alias ]
| derived_table [ AS ] table_alias [ ( column_alias [ ,...n ] ) ]
| <joined_table>
|
<joined_table> ::=
<table_source> <join_type> <table_source> ON <search_condition>
| <table_source> CROSS JOIN <table_source>
| <joined_table>
|
<join_type> ::=
[ INNER
|{
{ LEFT | RIGHT | FULL } [OUTER]
}
]
[ <join_hint> ]
JOIN
|
<table_hint_limited> ::=
{
FASTFIRSTROW
| HOLDLOCK
| PAGLOCK
| READCOMMITTED
| REPEATABLEREAD
| ROWLOCK
| SERIALIZABLE
| TABLOCK
| TABLOCKX
| UPDLOCK
}
|
<table_hint> ::=
{ INDEX ( index_val [ ,...n ] )
| FASTFIRSTROW
| HOLDLOCK
| NOLOCK
| PAGLOCK
| READCOMMITTED
| READPAST
| READUNCOMMITTED
| REPEATABLEREAD
| ROWLOCK
| SERIALIZABLE
| TABLOCK
| TABLOCKX
| UPDLOCK
}
|
<query_hint> ::=
{
{ HASH | ORDER } GROUP
| { CONCAT | HASH | MERGE } UNION
| {LOOP | MERGE | HASH } JOIN
| FAST number_rows
| FORCE ORDER
| MAXDOP
| ROBUST PLAN
| KEEP PLAN
}
|