Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Tipe data yang didukung di Aurora DSQL
Aurora DSQL mendukung subset dari jenis PostgreSQL umum.
Topik
Jenis data numerik
Aurora DSQL mendukung tipe data numerik PostgreSQL berikut.
| Nama | Alias | Rentang dan presisi | Ukuran penyimpanan | Dukungan indeks |
|---|---|---|---|---|
smallint |
int2 |
-32768 ke +32767 | 2 byte | Ya |
|
|
|
-2147483648 ke +2147483647 |
4 byte |
Ya |
|
|
|
-9223372036854775808 ke +9223372036854775807 |
8 byte |
Ya |
|
|
|
6 digit desimal presisi |
4 byte |
Ya |
|
|
|
15 digit desimal presisi |
8 byte |
Ya |
|
|
|
Numerik yang tepat dari presisi yang dapat dipilih. Presisi maksimum adalah 38 dan skala maksimum adalah 37. 1 Defaultnya adalah |
8 byte+2 byte per digit presisi. Ukuran maksimum adalah 27 byte. |
Ya |
1— Jika Anda tidak secara eksplisit menentukan ukuran saat Anda menjalankan CREATE TABLE atau, ALTER TABLE ADD COLUMN Aurora DSQL memberlakukan default. Aurora DSQL menerapkan batasan saat Anda menjalankan atau pernyataan. INSERT UPDATE
Tipe data karakter
Aurora DSQL mendukung tipe data karakter PostgreSQL berikut.
| Nama | Alias | Deskripsi | Batas Aurora DSQL | Ukuran penyimpanan | Dukungan indeks |
|---|---|---|---|---|---|
|
|
|
Fixed-length string karakter |
4096 byte 1 |
Variabel hingga 4100 byte |
Ya |
|
|
|
Variable-length string karakter |
65535 byte 1 |
Variabel hingga 65539 byte |
Ya |
|
|
Jika panjang tetap, ini adalah alias untuk |
4096 byte 1 |
Variabel hingga 4100 byte |
Ya | |
|
|
Variable-length string karakter |
1 MiB 1 |
Variabel hingga 1 MiB |
Ya |
1— Jika Anda tidak secara eksplisit menentukan ukuran ketika Anda menjalankan CREATE TABLE atauALTER TABLE ADD COLUMN, maka Aurora DSQL memberlakukan default. Aurora DSQL menerapkan batasan saat Anda menjalankan atau pernyataan. INSERT UPDATE
Jenis data tanggal dan waktu
Aurora DSQL mendukung tipe data tanggal dan waktu PostgreSQL berikut.
| Nama | Alias | Deskripsi | Kisaran | Resolusi | Ukuran penyimpanan | Dukungan indeks |
|---|---|---|---|---|---|---|
|
|
Tanggal kalender (tahun, bulan, hari) |
4713 SM — 5874897 IKLAN |
1 hari |
4 byte |
Ya | |
|
|
Waktu hari, tanpa zona waktu |
00:00:00 — 24:00:00 |
1 mikrodetik |
8 byte |
Ya | |
|
|
|
waktu hari, termasuk zona waktu |
00:00:00 +1559 — 24:00:00 —1559 |
1 mikrodetik |
12 byte |
Tidak |
|
|
Tanggal dan waktu, tanpa zona waktu |
4713 SM — 294276 IKLAN | 1 mikrodetik |
8 byte |
Ya | |
|
|
|
Tanggal dan waktu, termasuk zona waktu |
4713 SM — 294276 IKLAN | 1 mikrodetik |
8 byte |
Ya |
|
|
Rentang waktu |
-178000000 tahun — 178000000 tahun | 1 mikrodetik |
16 byte |
Tidak |
Jenis data lain-lain
Aurora DSQL mendukung berbagai jenis data PostgreSQL berikut.
| Nama | Alias | Deskripsi | Batas Aurora DSQL | Ukuran penyimpanan | Dukungan indeks |
|---|---|---|---|---|---|
|
|
|
Logis Boolean () true/false |
1 byte |
Ya | |
|
|
Data biner (“array byte”) |
1 MiB 1 |
Variabel hingga batas 1 MiB |
Tidak | |
|
|
Pengidentifikasi unik secara universal |
16 byte |
Ya | ||
|
|
Data JSON |
1 MiB 2 |
Variabel hingga batas 1 MiB. 2 |
Tidak | |
|
|
Data JSON biner |
1 MiB 2 |
Variabel hingga batas 1 MiB. 2 |
Tidak |
1— Jika Anda tidak secara eksplisit menentukan ukuran ketika Anda menjalankan CREATE TABLE atauALTER TABLE ADD COLUMN, maka Aurora DSQL memberlakukan default. Aurora DSQL menerapkan batasan saat Anda menjalankan atau pernyataan. INSERT UPDATE
2— Aurora DSQL secara otomatis menerapkan kompresi ke besar json dan jsonb nilai selama dan operasi. INSERT UPDATE Batas 1 MiB berlaku untuk ukuran terkompresi, sehingga Anda dapat menyimpan json dan jsonb nilai secara signifikan lebih besar dari 1 MiB selama mereka mengompres di bawah batas.
Untuk menonaktifkan kompresi, gunakan STORAGE kata kunci. Untuk informasi selengkapnya, lihat CREATE TABLE dan ALTER TABLE.
Fungsi dan operator JSON
catatan
Fungsijson_populate_record,, json_populate_recordsetjsonb_populate_record, dan jsonb_populate_recordset bekerja dengan tipe baris tabel dan tampilan, tetapi tidak dengan tipe komposit khusus karena Aurora DSQL saat ini tidak mendukung. CREATE TYPE
Contoh berikut menunjukkan json_populate_record dan jsonb_populate_recordset digunakan dengan tipe baris tabel:
CREATE TABLE tt (c1 INT, c2 INT); SELECT * FROM json_populate_record(null::tt, '{"c1": 1, "c2": 2}');
c1 | c2 ----+---- 1 | 2 (1 row)
SELECT * FROM jsonb_populate_recordset(null::tt, '[{"c1":1,"c2":2}, {"c1":3,"c2":4}]');
c1 | c2 ----+---- 1 | 2 3 | 4 (2 rows)
Jenis data runtime kueri
Query tipe data runtime adalah tipe data internal yang digunakan pada waktu eksekusi query. Jenis ini berbeda dari PostgreSQL-compatible jenis seperti varchar dan integer yang Anda tentukan dalam skema Anda. Sebagai gantinya, jenis ini adalah representasi runtime yang digunakan Aurora DSQL saat memproses kueri.
Tipe data berikut hanya didukung selama runtime kueri:
- Jenis array
-
Aurora DSQL mendukung array dari tipe data yang didukung. Misalnya, Anda dapat memiliki array bilangan bulat. Fungsi
string_to_arraymembagi string menjadi PostgreSQL-style array dengan pembatas koma (,) seperti yang ditunjukkan pada contoh berikut. Anda dapat menggunakan array dalam ekspresi, output fungsi, atau perhitungan sementara selama eksekusi kueri.SELECT string_to_array('1,2', ',');Fungsi mengembalikan respon yang mirip dengan berikut ini:
string_to_array ----------------- {1,2} (1 row) - jenis inet
-
Tipe data mewakili IPv4, alamat host IPv6, dan subnetnya. Jenis ini berguna saat mengurai log, memfilter pada subnet IP, atau melakukan perhitungan jaringan dalam kueri. Untuk informasi selengkapnya, lihat inet di dokumentasi PostgreSQL
.