

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# BERGABUNG MENJADI
<a name="querying-iceberg-merge-into"></a>

Secara kondisional memperbarui, menghapus, atau menyisipkan baris ke dalam tabel Iceberg. Sebuah pernyataan tunggal dapat menggabungkan tindakan pembaruan, menghapus, dan menyisipkan. Untuk sintaks, lihat [BERGABUNG MENJADI](merge-into-statement.md).

**catatan**  
`MERGE INTO`bersifat transaksional dan hanya didukung untuk tabel Apache Iceberg di mesin Athena versi 3.

Contoh berikut menghapus semua pelanggan dari tabel `t` yang ada di tabel `s` sumber.

```
MERGE INTO accounts t USING monthly_accounts_update s
ON t.customer = s.customer
WHEN MATCHED
THEN DELETE
```

Contoh berikut memperbarui tabel target `t` dengan informasi pelanggan dari tabel sumber`s`. Untuk baris pelanggan dalam tabel `t` yang memiliki baris pelanggan yang cocok dalam tabel`s`, contoh menambah pembelian dalam tabel t. Jika tabel tidak `t` memiliki kecocokan untuk baris pelanggan dalam tabel`s`, contoh menyisipkan baris pelanggan dari tabel `s` ke dalam tabel`t`.

```
MERGE INTO accounts t USING monthly_accounts_update s
    ON (t.customer = s.customer)
    WHEN MATCHED
        THEN UPDATE SET purchases = s.purchases + t.purchases
    WHEN NOT MATCHED
        THEN INSERT (customer, purchases, address)
              VALUES(s.customer, s.purchases, s.address)
```

Contoh berikut secara kondisional memperbarui tabel target `t` dengan informasi dari tabel `s` sumber. Contoh menghapus setiap baris target yang cocok yang alamat sumbernya adalah Centreville. Untuk semua baris lain yang cocok, contoh menambahkan pembelian sumber dan menetapkan alamat target ke alamat sumber. Jika tidak ada kecocokan dalam tabel target, contoh menyisipkan baris dari tabel sumber.

```
MERGE INTO accounts t USING monthly_accounts_update s
    ON (t.customer = s.customer)
    WHEN MATCHED AND s.address = 'Centreville'
        THEN DELETE
    WHEN MATCHED
        THEN UPDATE
            SET purchases = s.purchases + t.purchases, address = s.address
    WHEN NOT MATCHED
        THEN INSERT (customer, purchases, address)
              VALUES(s.customer, s.purchases, s.address)
```