mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-02-23 19:39:53 +08:00
MERGE docs adjustments
Per Justin Pryzby Discussion: https://postgr.es/m/20220801145257.GA15006@telsasoft.com Discussion: https://postgr.es/m/20220714162618.GH18011@telsasoft.com
This commit is contained in:
parent
92af9143f1
commit
3d895bc846
@ -402,7 +402,8 @@
|
||||
and a unique index is present and a duplicate row is concurrently
|
||||
inserted, then a uniqueness violation error is raised;
|
||||
<command>MERGE</command> does not attempt to avoid such
|
||||
errors by evaluating <literal>MATCHED</literal> conditions.
|
||||
errors by restarting evaluation of <literal>MATCHED</literal>
|
||||
conditions.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
@ -266,10 +266,6 @@ DELETE
|
||||
filled with a default value, either its declared default value
|
||||
or null if there is none.
|
||||
</para>
|
||||
<para>
|
||||
If the expression for any column is not of the correct data type,
|
||||
automatic type conversion will be attempted.
|
||||
</para>
|
||||
<para>
|
||||
If <replaceable class="parameter">target_table_name</replaceable>
|
||||
is a partitioned table, each row is routed to the appropriate partition
|
||||
@ -581,12 +577,12 @@ WHEN NOT MATCHED THEN
|
||||
<programlisting>
|
||||
MERGE INTO CustomerAccount CA
|
||||
USING (Select CustomerId, TransactionValue From RecentTransactions) AS T
|
||||
ON CA.CustomerId = T.CustomerId
|
||||
ON T.CustomerId = CA.CustomerId
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET Balance = Balance + TransactionValue;
|
||||
WHEN NOT MATCHED THEN
|
||||
INSERT (CustomerId, Balance)
|
||||
VALUES (T.CustomerId, T.TransactionValue)
|
||||
WHEN MATCHED THEN
|
||||
UPDATE SET Balance = Balance + TransactionValue;
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user