Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Fungsi tanggal
penting
Amazon S3 Select sudah tidak tersedia untuk pelanggan baru. Pelanggan Amazon S3 Select yang sudah ada dapat terus menggunakan fitur ini seperti biasa. Pelajari selengkapnya
Amazon S3 Select mendukung fungsi tanggal berikut.
DATE_ADD
Dengan bagian tanggal, kuantitas, dan timestamp, DATE_ADD mengembalikan timestamp yang diperbarui dengan mengubah bagian tanggal berdasarkan kuantitas.
Sintaks
DATE_ADD(date_part,quantity,timestamp)
Parameter
date_part-
Menentukan bagian dari tanggal untuk diubah. Ini dapat berupa salah satu dari berikut ini:
-
tahun
-
bulan
-
hari
-
jam
-
menit
-
detik
-
-
quantity -
Nilai yang diterapkan pada timestamp yang diperbarui. Nilai positif untuk
ditambahkan ke date_part timestamp, dan pengurangan nilai negatif.quantity -
timestamp -
Timestamp target tempat fungsi beroperasi.
Contoh
DATE_ADD(year, 5, `2010-01-01T`) -- 2015-01-01 (equivalent to 2015-01-01T) DATE_ADD(month, 1, `2010T`) -- 2010-02T (result will add precision as necessary) DATE_ADD(month, 13, `2010T`) -- 2011-02T DATE_ADD(day, -1, `2017-01-10T`) -- 2017-01-09 (equivalent to 2017-01-09T) DATE_ADD(hour, 1, `2017T`) -- 2017-01-01T01:00-00:00 DATE_ADD(hour, 1, `2017-01-02T03:04Z`) -- 2017-01-02T04:04Z DATE_ADD(minute, 1, `2017-01-02T03:04:05.006Z`) -- 2017-01-02T03:05:05.006Z DATE_ADD(second, 1, `2017-01-02T03:04:05.006Z`) -- 2017-01-02T03:04:06.006Z
DATE_DIFF
Dengan bagian tanggal dan dua timestamp yang valid, DATE_DIFF mengembalikan selisih bagian tanggal. Nilai yang dikembalikan adalah bilangan bulat negatif ketika nilai dari date_part lebih dari nilai timestamp1 dari date_part. Nilai yang dikembalikan adalah bilangan bulat positif ketika nilai timestamp2 dari date_part kurang dari nilai timestamp1 dari date_part.timestamp2
Sintaks
DATE_DIFF(date_part,timestamp1,timestamp2)
Parameter
-
date_part -
Menentukan bagian mana dari timestamp untuk dibandingkan. Untuk definisi
date_part, lihat DATE_ADD. -
timestamp1 -
Timestamp pertama untuk dibandingkan.
-
timestamp2 -
Timestamp kedua untuk dibandingkan.
Contoh
DATE_DIFF(year, `2010-01-01T`, `2011-01-01T`) -- 1 DATE_DIFF(year, `2010T`, `2010-05T`) -- 4 (2010T is equivalent to 2010-01-01T00:00:00.000Z) DATE_DIFF(month, `2010T`, `2011T`) -- 12 DATE_DIFF(month, `2011T`, `2010T`) -- -12 DATE_DIFF(day, `2010-01-01T23:00`, `2010-01-02T01:00`) -- 0 (need to be at least 24h apart to be 1 day apart)
EXTRACT
Dengan bagian tanggal dan timestamp, EXTRACT mengembalikan nilai bagian tanggal timestamp.
Sintaks
EXTRACT(date_partFROMtimestamp)
Parameter
-
date_part -
Menentukan bagian dari timestamp untuk diekstrak. Ini dapat berupa salah satu dari berikut ini:
-
YEAR -
MONTH -
DAY -
HOUR -
MINUTE -
SECOND -
TIMEZONE_HOUR -
TIMEZONE_MINUTE
-
-
timestamp -
Timestamp target tempat fungsi beroperasi.
Contoh
EXTRACT(YEAR FROM `2010-01-01T`) -- 2010 EXTRACT(MONTH FROM `2010T`) -- 1 (equivalent to 2010-01-01T00:00:00.000Z) EXTRACT(MONTH FROM `2010-10T`) -- 10 EXTRACT(HOUR FROM `2017-01-02T03:04:05+07:08`) -- 3 EXTRACT(MINUTE FROM `2017-01-02T03:04:05+07:08`) -- 4 EXTRACT(TIMEZONE_HOUR FROM `2017-01-02T03:04:05+07:08`) -- 7 EXTRACT(TIMEZONE_MINUTE FROM `2017-01-02T03:04:05+07:08`) -- 8
TO_STRING
Dengan timestamp dan pola format, TO_STRING mengembalikan representasi string timestamp dalam format yang diberikan.
Sintaks
TO_STRING (timestamptime_format_pattern)
Parameter
-
timestamp -
Timestamp target tempat fungsi beroperasi.
-
time_format_pattern -
String yang memiliki interpretasi karakter khusus berikut:
format
Contoh
Deskripsi
yy692 digit tahun
y19694 digit tahun
yyyy19694 digit tahun yang ditambahkan nol
M1Bulan dalam tahun
MM01Bulan dalam tahun yang ditambahkan nol
MMMJanSingkatan nama bulan dalam tahun
MMMMJanuaryNama bulan lengkap dalam tahun
MMMMMJHuruf pertama bulan dalam tahun (CATATAN: Format ini tidak valid untuk digunakan dengan fungsi
TO_TIMESTAMP.)d2Hari dalam bulan (1-31)
dd02Hari pada bulan yang ditambahkan nol (01-31)
aAMAM atau PM pada hari
h3Jam dalam hari (1-12)
hh03Jam dalam hari yang ditambahkan nol (01-12)
H3Jam dalam hari (0-23)
HH03Jam dalam hari yang ditambahkan nol (00-23)
m4Menit dalam jam (0-59)
mm04Menit dalam jam yang ditambahkan nol (00-59)
s5Detik dalam menit (0-59)
ss05Detik dalam menit yang ditambahkan nol (00-59)
S0Fraksi detik (presisi: 0,1, rentang: 0,0-0,9)
SS6Fraksi detik (presisi: 0,01, rentang: 0,0-0,99)
SSS60Fraksi detik (presisi: 0,001, rentang: 0,0-0,999)
………
SSSSSSSSS60000000Fraksi detik (presisi maksimum: 1 nanodetik, rentang: 0,0-0,999999999)
n60000000Nano dari detik
X+07atauZOffset dalam jam, atau
Zjika offset adalah 0XXatauXXXX+0700atauZOffset dalam jam dan menit, atau
Zjika offset adalah 0XXXatauXXXXX+07:00atauZOffset dalam jam dan menit, atau
Zjika offset adalah 0x7Offset dalam jam
xxatauxxxx700Offset dalam jam dan menit
xxxatauxxxxx+07:00Offset dalam jam dan menit
Contoh
TO_STRING(`1969-07-20T20:18Z`, 'MMMM d, y') -- "July 20, 1969" TO_STRING(`1969-07-20T20:18Z`, 'MMM d, yyyy') -- "Jul 20, 1969" TO_STRING(`1969-07-20T20:18Z`, 'M-d-yy') -- "7-20-69" TO_STRING(`1969-07-20T20:18Z`, 'MM-d-y') -- "07-20-1969" TO_STRING(`1969-07-20T20:18Z`, 'MMMM d, y h:m a') -- "July 20, 1969 8:18 PM" TO_STRING(`1969-07-20T20:18Z`, 'y-MM-dd''T''H:m:ssX') -- "1969-07-20T20:18:00Z" TO_STRING(`1969-07-20T20:18+08:00Z`, 'y-MM-dd''T''H:m:ssX') -- "1969-07-20T20:18:00Z" TO_STRING(`1969-07-20T20:18+08:00`, 'y-MM-dd''T''H:m:ssXXXX') -- "1969-07-20T20:18:00+0800" TO_STRING(`1969-07-20T20:18+08:00`, 'y-MM-dd''T''H:m:ssXXXXX') -- "1969-07-20T20:18:00+08:00"
TO_TIMESTAMP
Dengan string, TO_TIMESTAMP mengonversi menjadi timestamp. TO_TIMESTAMP adalah operasi terbalik TO_STRING.
Sintaks
TO_TIMESTAMP (string)
Parameter
-
string -
String target tempat fungsi beroperasi.
Contoh
TO_TIMESTAMP('2007T') -- `2007T` TO_TIMESTAMP('2007-02-23T12:14:33.079-08:00') -- `2007-02-23T12:14:33.079-08:00`
UTCNOW
UTCNOW mengembalikan waktu saat ini dalam UTC sebagai timestamp.
Sintaks
UTCNOW()
Parameter
UTCNOW tidak menggunakan parameter.
Contoh
UTCNOW() -- 2017-10-13T16:02:11.123Z