

Untuk kemampuan serupa dengan Amazon Timestream LiveAnalytics, pertimbangkan Amazon Timestream untuk InfluxDB. Ini menawarkan konsumsi data yang disederhanakan dan waktu respons kueri milidetik satu digit untuk analitik waktu nyata. Pelajari lebih lanjut [di sini](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html).

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

# Fungsi tanggal/waktu
<a name="date-time-functions"></a>

**catatan**  
Timestream for LiveAnalytics tidak mendukung nilai waktu negatif. Setiap operasi yang mengakibatkan waktu negatif menghasilkan kesalahan.

Timestream untuk LiveAnalytics menggunakan zona waktu UTC untuk tanggal dan waktu. Timestream mendukung fungsi-fungsi berikut untuk tanggal dan waktu.

**Topics**
+ [Umum dan konversi](#date-time-functions-general)
+ [Interval dan durasi](#date-time-functions-interval-duration)
+ [Memformat dan mengurai](#date-time-functions-formatting-parsing)
+ [Ekstraksi](#date-time-functions-extraction)

## Umum dan konversi
<a name="date-time-functions-general"></a>

Timestream untuk LiveAnalytics mendukung fungsi umum dan konversi berikut untuk tanggal dan waktu.


| Fungsi | Tipe data keluaran | Deskripsi | 
| --- | --- | --- | 
|  current\$1date  |  date  |  Mengembalikan tanggal saat ini di UTC. Tidak ada tanda kurung yang digunakan. <pre>SELECT current_date</pre> Contoh hasil: `2022-07-07`  Ini juga merupakan kata kunci yang dicadangkan. Untuk daftar kata kunci yang dicadangkan, lihat[Kata kunci terpesan](ts-limits.md#limits.reserved).   | 
|  current\$1time  |  Waktu  |  Mengembalikan waktu saat ini di UTC. Tidak ada tanda kurung yang digunakan. <pre>SELECT current_time</pre> Contoh hasil: `17:41:52.827000000`  Ini juga merupakan kata kunci yang dicadangkan. Untuk daftar kata kunci yang dicadangkan, lihat[Kata kunci terpesan](ts-limits.md#limits.reserved).   | 
|  current\$1timestamp atau now ()  |  timestamp  |  Mengembalikan stempel waktu saat ini di UTC. <pre>SELECT current_timestamp</pre> Contoh hasil: `2022-07-07 17:42:32.939000000`  Ini juga merupakan kata kunci yang dicadangkan. Untuk daftar kata kunci yang dicadangkan, lihat[Kata kunci terpesan](ts-limits.md#limits.reserved).   | 
|  current\$1timezone ()  |  varchar Nilainya akan menjadi 'UTC.'  |  Timestream menggunakan zona waktu UTC untuk tanggal dan waktu. <pre>SELECT current_timezone()</pre> Contoh hasil: `UTC`  | 
|  tanggal (varchar (x)), tanggal (stempel waktu)  |  date  |  <pre>SELECT date(TIMESTAMP '2022-07-07 17:44:43.771000000')</pre> Contoh hasil: `2022-07-07`  | 
|  last\$1day\$1of\$1month (stempel waktu), last\$1day\$1of\$1month (tanggal)  |  date  |  <pre>SELECT last_day_of_month(TIMESTAMP '2022-07-07 17:44:43.771000000')</pre> Contoh hasil: `2022-07-31`  | 
|  dari\$1iso8601\$1timestamp (string)  |  timestamp  |  Mem-parsing stempel waktu ISO 8601 ke dalam format stempel waktu internal. <pre>SELECT from_iso8601_timestamp('2022-06-17T08:04:05.000000000+05:00')</pre> Contoh hasil: `2022-06-17 03:04:05.000000000`  | 
|  dari\$1iso8601\$1date (string)  |  date  |  Mem-parsing string tanggal ISO 8601 ke dalam format stempel waktu internal untuk UTC 00:00:00 dari tanggal yang ditentukan. <pre>SELECT from_iso8601_date('2022-07-17')</pre> Contoh hasil: `2022-07-17`  | 
|  to\$1iso8601 (stempel waktu), to\$1iso8601 (tanggal)  |  varchar  |  Mengembalikan ISO 8601 string diformat untuk input. <pre>SELECT to_iso8601(from_iso8601_date('2022-06-17'))</pre> Contoh hasil: `2022-06-17`  | 
|  dari\$1milidetik (bigint)  |  timestamp  |  <pre>SELECT from_milliseconds(1)</pre> Contoh hasil: `1970-01-01 00:00:00.001000000`  | 
|  dari\$1nanodetik (bigint)  |  timestamp  |  <pre>select from_nanoseconds(300000001)</pre> Contoh hasil: `1970-01-01 00:00:00.300000001`  | 
|  from\$1unixtime (ganda)  |  timestamp  |  Mengembalikan timestamp yang sesuai dengan unixtime yang disediakan. <pre>SELECT from_unixtime(1)</pre> Contoh hasil: `1970-01-01 00:00:01.000000000`  | 
|  waktu lokal  |  Waktu  |  Mengembalikan waktu saat ini di UTC. Tidak ada tanda kurung yang digunakan. <pre>SELECT localtime</pre> Contoh hasil: `17:58:22.654000000`  Ini juga merupakan kata kunci yang dicadangkan. Untuk daftar kata kunci yang dicadangkan, lihat[Kata kunci terpesan](ts-limits.md#limits.reserved).   | 
|  localtimestamp  |  timestamp  |  Mengembalikan stempel waktu saat ini di UTC. Tidak ada tanda kurung yang digunakan. <pre>SELECT localtimestamp</pre> Contoh hasil: `2022-07-07 17:59:04.368000000`  Ini juga merupakan kata kunci yang dicadangkan. Untuk daftar kata kunci yang dicadangkan, lihat[Kata kunci terpesan](ts-limits.md#limits.reserved).   | 
|  to\$1milliseconds (interval hari ke detik), to\$1milliseconds (stempel waktu)  |  bigint  |  <pre>SELECT to_milliseconds(INTERVAL '2' DAY + INTERVAL '3' HOUR)</pre> Contoh hasil: `183600000` <pre>SELECT to_milliseconds(TIMESTAMP '2022-06-17 17:44:43.771000000')</pre> Contoh hasil: `1655487883771`  | 
|  to\$1nanoseconds (interval hari ke detik), to\$1nanoseconds (stempel waktu)  |  bigint  |  <pre>SELECT to_nanoseconds(INTERVAL '2' DAY + INTERVAL '3' HOUR)</pre> Contoh hasil: `183600000000000` <pre>SELECT to_nanoseconds(TIMESTAMP '2022-06-17 17:44:43.771000678')</pre> Contoh hasil: `1655487883771000678`  | 
|  to\$1unixtime (stempel waktu)  |  double  |  Mengembalikan unixtime untuk stempel waktu yang disediakan. <pre>SELECT to_unixtime('2022-06-17 17:44:43.771000000')</pre> Contoh hasil: `1.6554878837710001E9`  | 
|  date\$1trunc (satuan, stempel waktu)  |  timestamp  |  Mengembalikan stempel waktu terpotong ke unit, di mana unit adalah salah satu dari [detik, menit, jam, hari, minggu, bulan, kuartal, atau tahun]. <pre>SELECT date_trunc('minute', TIMESTAMP '2022-06-17 17:44:43.771000000')</pre> Contoh hasil: `2022-06-17 17:44:00.000000000`  | 

## Interval dan durasi
<a name="date-time-functions-interval-duration"></a>

Timestream untuk LiveAnalytics mendukung fungsi interval dan durasi berikut untuk tanggal dan waktu.


| Fungsi | Tipe data keluaran | Deskripsi | 
| --- | --- | --- | 
|  date\$1add (unit, bigint, tanggal), date\$1add (unit, bigint, waktu), date\$1add (varchar (x), bigint, stempel waktu)  |  timestamp  |  Menambahkan bigint unit, di mana unit adalah salah satu dari [detik, menit, jam, hari, minggu, bulan, kuartal, atau tahun]. <pre>SELECT date_add('hour', 9, TIMESTAMP '2022-06-17 00:00:00')</pre> Contoh hasil: `2022-06-17 09:00:00.000000000`  | 
|  date\$1diff (satuan, tanggal, tanggal), date\$1diff (satuan, waktu, waktu), date\$1diff (unit, stempel waktu, stempel waktu)  |  bigint  |  Mengembalikan perbedaan, di mana unit adalah salah satu dari [detik, menit, jam, hari, minggu, bulan, kuartal, atau tahun]. <pre>SELECT date_diff('day', DATE '2020-03-01', DATE '2020-03-02')</pre> Contoh hasil: `1`  | 
|  parse\$1duration (string)  |  interval  |  Mem-parsing string input untuk mengembalikan yang `interval` setara. <pre>SELECT parse_duration('42.8ms')</pre> Contoh hasil: `0 00:00:00.042800000` <pre>SELECT typeof(parse_duration('42.8ms'))</pre> Contoh hasil: `interval day to second`  | 
| bin (stempel waktu, interval) | timestamp |  Membulatkan nilai integer `timestamp` parameter ke kelipatan terdekat dari nilai integer `interval` parameter. Arti dari nilai pengembalian ini mungkin tidak jelas. Ini dihitung menggunakan aritmatika integer terlebih dahulu dengan membagi bilangan bulat timestamp dengan integer interval dan kemudian dengan mengalikan hasilnya dengan integer interval. Mengingat bahwa stempel waktu menentukan titik waktu UTC sebagai sejumlah pecahan detik yang berlalu sejak zaman POSIX (1 Januari 1970), nilai pengembalian jarang akan sejajar dengan unit kalender. Misalnya, jika Anda menentukan interval 30 hari, semua hari sejak zaman dibagi menjadi kenaikan 30 hari, dan awal kenaikan 30 hari terbaru dikembalikan, yang tidak memiliki hubungan dengan bulan kalender. Berikut ini adalah beberapa contohnya: <pre>bin(TIMESTAMP '2022-06-17 10:15:20', 5m)     ==> 2022-06-17 10:15:00.000000000<br />bin(TIMESTAMP '2022-06-17 10:15:20', 1d)     ==> 2022-06-17 00:00:00.000000000<br />bin(TIMESTAMP '2022-06-17 10:15:20', 10day)  ==> 2022-06-17 00:00:00.000000000<br />bin(TIMESTAMP '2022-06-17 10:15:20', 30day)  ==> 2022-05-28 00:00:00.000000000</pre>  | 
|  lalu (interval)  |  timestamp  |  Mengembalikan nilai yang sesuai dengan `interval` current\$1timestamp. <pre>SELECT ago(1d)</pre> Contoh hasil: `2022-07-06 21:08:53.245000000`  | 
|  interval literal seperti 1h, 1d, dan 30m  |  interval  |  Literal interval adalah kemudahan untuk parse\$1duration (string). Misalnya, `1d` sama dengan `parse_duration('1d')`. Ini memungkinkan penggunaan literal di mana pun interval digunakan. Misalnya, `ago(1d)` dan `bin(<timestamp>, 1m)`.  | 

Beberapa literal interval bertindak sebagai singkatan untuk parse\$1duration. Misalnya,`parse_duration('1day')`,`1day`,`parse_duration('1d')`, dan `1d` masing-masing kembali `1 00:00:00.000000000` di mana jenisnya`interval day to second`. Ruang diperbolehkan dalam format yang disediakan untuk`parse_duration`. Misalnya `parse_duration('1day')` juga kembali`00:00:00.000000000`. Tapi `1 day` bukan interval literal.

Satuan yang terkait dengan `interval day to second` adalah ns, nanodetik, us, mikrodetik, ms, milidetik, s, detik, m, menit, h, jam, d, dan hari.

Ada juga`interval year to month`. Satuan yang terkait dengan interval tahun ke bulan adalah y, tahun, dan bulan. Misalnya, `SELECT 1year` pengembalian`1-0`. `SELECT 12month`juga kembali`1-0`. `SELECT 8month`kembali`0-8`.

Meskipun unit juga `quarter` tersedia untuk beberapa fungsi seperti `date_trunc` dan`date_add`, tidak `quarter` tersedia sebagai bagian dari interval literal.

## Memformat dan mengurai
<a name="date-time-functions-formatting-parsing"></a>

Timestream untuk LiveAnalytics mendukung fungsi pemformatan dan penguraian berikut untuk tanggal dan waktu.


| Fungsi | Tipe data keluaran | Deskripsi | 
| --- | --- | --- | 
|  date\$1format (stempel waktu, varchar (x))  |  varchar  |  [Untuk informasi selengkapnya tentang penentu format yang digunakan oleh fungsi ini, lihat \$1 https://trino.io/docs/current/functions/datetime.html mysql-date-functions](https://trino.io/docs/current/functions/datetime.html#mysql-date-functions) <pre>SELECT date_format(TIMESTAMP '2019-10-20 10:20:20', '%Y-%m-%d %H:%i:%s')</pre> Contoh hasil: `2019-10-20 10:20:20`  | 
|  date\$1parse (varchar (x), varchar (y))  |  timestamp  |  [Untuk informasi selengkapnya tentang penentu format yang digunakan oleh fungsi ini, lihat \$1 https://trino.io/docs/current/functions/datetime.html mysql-date-functions](https://trino.io/docs/current/functions/datetime.html#mysql-date-functions) <pre>SELECT date_parse('2019-10-20 10:20:20', '%Y-%m-%d %H:%i:%s')</pre> Contoh hasil: `2019-10-20 10:20:20.000000000`  | 
|  format\$1datetime (stempel waktu, varchar (x))  |  varchar  |  Untuk informasi selengkapnya tentang string format yang digunakan oleh fungsi ini, lihat [http://joda-time.sourceforge. net/apidocs/org/joda/time/format/DateTimeFormat.html](http://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html) <pre>SELECT format_datetime(parse_datetime('1968-01-13 12', 'yyyy-MM-dd HH'), 'yyyy-MM-dd HH')</pre> Contoh hasil: `1968-01-13 12`  | 
|  parse\$1datetime (varchar (x), varchar (y))  |  timestamp  |  Untuk informasi selengkapnya tentang string format yang digunakan oleh fungsi ini, lihat [http://joda-time.sourceforge. net/apidocs/org/joda/time/format/DateTimeFormat.html](http://joda-time.sourceforge.net/apidocs/org/joda/time/format/DateTimeFormat.html) <pre>SELECT parse_datetime('2019-12-29 10:10 PST', 'uuuu-LL-dd HH:mm z')</pre> Contoh hasil: `2019-12-29 18:10:00.000000000`  | 

## Ekstraksi
<a name="date-time-functions-extraction"></a>

Timestream untuk LiveAnalytics mendukung fungsi ekstraksi berikut untuk tanggal dan waktu. Fungsi ekstrak adalah dasar untuk fungsi kenyamanan yang tersisa.


| Fungsi | Tipe data keluaran | Deskripsi | 
| --- | --- | --- | 
|  sari  |  bigint  |  Mengekstrak bidang dari stempel waktu, di mana bidang adalah salah satu dari [TAHUN, KUARTAL, BULAN, MINGGU, HARI, DAY\$1OF\$1MONTH, DAY\$1OF\$1WEEK, DOW, DAY\$1OF\$1YEAR, DOY, YEAR\$1OF\$1WEEK, YOW, HOUR, MINUTE, atau SECOND]. <pre>SELECT extract(YEAR FROM '2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `2019`  | 
|  hari (stempel waktu), hari (tanggal), hari (interval hari ke detik)  |  bigint  |  <pre>SELECT day('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `12`  | 
|  day\$1of\$1month (stempel waktu), day\$1of\$1month (tanggal), day\$1of\$1month (interval hari ke detik)  |  bigint  |  <pre>SELECT day_of_month('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `12`  | 
|  day\$1of\$1week (stempel waktu), day\$1of\$1week (tanggal)  |  bigint  |  <pre>SELECT day_of_week('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `6`  | 
|  day\$1of\$1year (stempel waktu), day\$1of\$1year (tanggal)  |  bigint  |  <pre>SELECT day_of_year('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `285`  | 
|  dow (stempel waktu), dow (tanggal)  |  bigint  |  Alias untuk day\$1of\$1week  | 
|  doy (stempel waktu), doy (tanggal)  |  bigint  |  Alias untuk day\$1of\$1year  | 
|  jam (stempel waktu), jam (waktu), jam (interval hari ke detik)  |  bigint  |  <pre>SELECT hour('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `23`  | 
|  milidetik (stempel waktu), milidetik (waktu), milidetik (interval hari ke detik)  |  bigint  |  <pre>SELECT millisecond('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `0`  | 
|  menit (timestamp), menit (waktu), menit (interval hari ke detik)  |  bigint  |  <pre>SELECT minute('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `10`  | 
|  bulan (stempel waktu), bulan (tanggal), bulan (interval tahun ke bulan)  |  bigint  |  <pre>SELECT month('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `10`  | 
|  nanodetik (stempel waktu), nanodetik (waktu), nanodetik (interval hari ke detik)  |  bigint  |  <pre>SELECT nanosecond(current_timestamp)</pre> Contoh hasil: `162000000`  | 
|  kuartal (stempel waktu), kuartal (tanggal)  |  bigint  |  <pre>SELECT quarter('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `4`  | 
|  kedua (stempel waktu), detik (waktu), detik (interval hari ke detik)  |  bigint  |  <pre>SELECT second('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `34`  | 
|  minggu (stempel waktu), minggu (tanggal)  |  bigint  |  <pre>SELECT week('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `41`  | 
|  week\$1of\$1year (stempel waktu), week\$1of\$1year (tanggal)  |  bigint  |  Alias untuk minggu  | 
|  tahun (stempel waktu), tahun (tanggal), tahun (interval tahun ke bulan)  |  bigint  |  <pre>SELECT year('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `2019`  | 
|  year\$1of\$1week (stempel waktu), year\$1of\$1week (tanggal)  |  bigint  |  <pre>SELECT year_of_week('2019-10-12 23:10:34.000000000')</pre> Contoh hasil: `2019`  | 
|  yow (stempel waktu), yow (tanggal)  |  bigint  |  Alias untuk year\$1of\$1week  | 