

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

# Skema tabel Evolve Iceberg
<a name="querying-iceberg-evolving-table-schema"></a>

Pembaruan skema gunung es adalah perubahan khusus metadata. Tidak ada file data yang diubah saat Anda melakukan pembaruan skema. 

Format Iceberg mendukung perubahan evolusi skema berikut:
+ **Tambahkan** - Menambahkan kolom baru ke tabel atau ke bersarang`struct`.
+ **Drop** - Menghapus kolom yang ada dari tabel atau bersarang`struct`.
+ **Ganti nama** - Mengganti nama kolom atau bidang yang ada di bersarang. `struct`
+ **Menyusun ulang** - Mengubah urutan kolom.
+  **Jenis promosi** - Memperluas jenis kolom, `struct` bidang, `map` kunci, `map` nilai, atau `list` elemen. Saat ini, kasus berikut didukung untuk tabel Iceberg: 
  + bilangan bulat ke bilangan bulat besar
  + mengapung menjadi dua kali lipat
  + meningkatkan presisi tipe desimal

Anda dapat menggunakan pernyataan DDL di bagian ini untuk memodifikasi skema tabel Iceberg.

**Topics**
+ [MENGUBAH TABEL TAMBAHKAN KOLOM](querying-iceberg-alter-table-add-columns.md)
+ [MENGUBAH KOLOM DROP TABEL](querying-iceberg-alter-table-drop-column.md)
+ [MENGUBAH KOLOM PERUBAHAN TABEL](querying-iceberg-alter-table-change-column.md)
+ [TAMPILKAN KOLOM](querying-iceberg-show-columns.md)

# MENGUBAH TABEL TAMBAHKAN KOLOM
<a name="querying-iceberg-alter-table-add-columns"></a>

Menambahkan satu atau lebih kolom ke tabel Iceberg yang ada.

## Sinopsis
<a name="querying-iceberg-alter-table-add-columns-synopsis"></a>

```
ALTER TABLE [db_name.]table_name ADD COLUMNS (col_name data_type [,...])
```

## Contoh
<a name="querying-iceberg-alter-table-add-columns-example"></a>

Contoh berikut menambahkan `comment` kolom tipe `string` ke tabel Iceberg.

```
ALTER TABLE iceberg_table ADD COLUMNS (comment string)
```

Contoh berikut menambahkan `point` kolom tipe `struct` ke tabel Iceberg.

```
ALTER TABLE iceberg_table 
ADD COLUMNS (point struct<x: double, y: double>)
```

Contoh berikut menambahkan `points` kolom yang merupakan array struct ke tabel Iceberg.

```
ALTER TABLE iceberg_table 
ADD COLUMNS (points array<struct<x: double, y: double>>)
```

# MENGUBAH KOLOM DROP TABEL
<a name="querying-iceberg-alter-table-drop-column"></a>

Menjatuhkan kolom dari tabel Iceberg yang ada.

## Sinopsis
<a name="querying-iceberg-alter-table-drop-column-synopsis"></a>

```
ALTER TABLE [db_name.]table_name DROP COLUMN col_name
```

## Contoh
<a name="querying-iceberg-alter-table-drop-column-example"></a>

```
ALTER TABLE iceberg_table DROP COLUMN userid
```

# MENGUBAH KOLOM PERUBAHAN TABEL
<a name="querying-iceberg-alter-table-change-column"></a>

Mengubah nama, jenis, urutan atau komentar kolom dalam tabel Gunung Es.

**catatan**  
`ALTER TABLE REPLACE COLUMNS` tidak didukung. Karena `REPLACE COLUMNS` menghapus semua kolom dan kemudian menambahkan yang baru, itu tidak didukung untuk Iceberg. `CHANGE COLUMN`adalah sintaks yang disukai untuk evolusi skema. 

## Sinopsis
<a name="querying-iceberg-alter-table-change-column-synopsis"></a>

```
ALTER TABLE [db_name.]table_name
  CHANGE [COLUMN] col_old_name col_new_name column_type 
  [COMMENT col_comment] [FIRST|AFTER column_name]
```

## Contoh
<a name="querying-iceberg-alter-table-change-column-example"></a>

```
ALTER TABLE iceberg_table CHANGE comment blog_comment string AFTER id
```

# TAMPILKAN KOLOM
<a name="querying-iceberg-show-columns"></a>

Menampilkan kolom dalam tabel.

## Sinopsis
<a name="querying-iceberg-show-columns-synopsis"></a>

```
SHOW COLUMNS (FROM|IN) [db_name.]table_name
```

## Contoh
<a name="querying-iceberg-alter-table-change-column-example"></a>

```
SHOW COLUMNS FROM iceberg_table
```