Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

MERGE INTO

Modalità Focus
MERGE INTO - Amazon Athena

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Aggiorna, elimina o inserisce in modo condizionale righe in una tabella Apache Iceberg. Una singola istruzione può combinare operazioni di aggiornamento, eliminazione e inserimento.

Nota

L'istruzione MERGE INTO è transazionale ed è supportata solo per le tabelle Apache Iceberg nella versione 3 del motore Athena.

Riepilogo

Per aggiornare, eliminare o inserire in modo condizionale righe di una tabella Iceberg, utilizza la sintassi seguente.

MERGE INTO target_table [ [ AS ] target_alias ] USING { source_table | query } [ [ AS ] source_alias ] ON search_condition when_clause [...]

when_clauseÈ una delle seguenti:

WHEN MATCHED [ AND condition ] THEN DELETE
WHEN MATCHED [ AND condition ] THEN UPDATE SET ( column = expression [, ...] )
WHEN NOT MATCHED [ AND condition ] THEN INSERT (column_name[, column_name ...]) VALUES (expression, ...)

MERGE supporta un numero arbitrario di clausole WHEN con condizioni MATCHED diverse. Le clausole condizionali eseguono l'operazione DELETE, UPDATE o INSERT nella prima clausola WHEN selezionata dallo stato MATCHED e dalla condizione corrispondente.

Per ogni riga di origine, le clausole WHEN vengono elaborate in ordine. Viene eseguita solo la prima clausola WHEN corrispondente. Le clausole successive vengono ignorate. Viene generato un errore utente quando una singola riga della tabella di destinazione corrisponde a più di una riga di origine.

Se una riga di origine non corrisponde ad alcuna clausola WHEN e non è presente alcuna clausola WHEN NOT MATCHED, la riga di origine viene ignorata.

Nelle clausole WHEN che prevedono operazioni UPDATE, le espressioni dei valori delle colonne possono fare riferimento a qualsiasi campo della destinazione o dell'origine. Nel caso di NOT MATCHED, le espressioni INSERT possono fare riferimento a qualsiasi campo dell'origine.

Esempio

L'esempio seguente unisce le righe della seconda tabella alla prima tabella se le righe non esistono nella prima tabella. Tieni presente che le colonne elencate nella clausola VALUES devono essere precedute dall'alias della tabella di origine. Le colonne di destinazione elencate nella clausola INSERT non devono avere questo prefisso.

MERGE INTO iceberg_table_sample as ice1 USING iceberg2_table_sample as ice2 ON ice1.col1 = ice2.col1 WHEN NOT MATCHED THEN INSERT (col1) VALUES (ice2.col1)

Per ulteriori esempi MERGE INTO, consulta Aggiorna i dati della tabella Iceberg.

In questa pagina

Argomento successivo:

OPTIMIZE

Argomento precedente:

UPDATE
PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.