

 Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai Patch 198. Python yang ada UDFs akan terus berfungsi hingga 30 Juni 2026. Untuk informasi lebih lanjut, lihat [posting blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

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

# Jenis Datetime
<a name="r_Datetime_types"></a>

**Topics**
+ [Penyimpanan dan rentang](#r_Datetime_types-storage-and-ranges)
+ [DATE](#r_Datetime_types-date)
+ [TIME](#r_Datetime_types-time)
+ [JADWAL](#r_Datetime_types-timetz)
+ [TIMESTAMP](#r_Datetime_types-timestamp)
+ [TIMESTAMPTZ](#r_Datetime_types-timestamptz)
+ [Contoh dengan tipe datetime](r_Examples_with_datetime_types.md)
+ [Tanggal, waktu, dan literal stempel waktu](r_Date_and_time_literals.md)
+ [Tipe data interval dan literal](r_interval_data_types.md)

Tipe data datetime termasuk DATE, TIME, TIMETZ, TIMESTAMP, dan TIMESTAMPTZ.

## Penyimpanan dan rentang
<a name="r_Datetime_types-storage-and-ranges"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/dg/r_Datetime_types.html)

## DATE
<a name="r_Datetime_types-date"></a>

Gunakan tipe data DATE untuk menyimpan tanggal kalender sederhana tanpa cap waktu.

## TIME
<a name="r_Datetime_types-time"></a>

Waktu adalah alias dari TIME WITHOUT TIME ZONE.

Gunakan tipe data TIME untuk menyimpan waktu dalam sehari. 

Kolom TIME menyimpan nilai hingga maksimum enam digit presisi untuk detik pecahan.

Secara default, nilai TIME adalah Coordinated Universal Time (UTC) di tabel pengguna dan tabel sistem Amazon Redshift. 

## JADWAL
<a name="r_Datetime_types-timetz"></a>

TIMETZ adalah alias dari TIME WITH TIME ZONE.

Gunakan tipe data TIMETZ untuk menyimpan waktu hari dengan zona waktu. 

Kolom TIMETZ menyimpan nilai hingga maksimum enam digit presisi untuk detik pecahan.

Secara default, nilai TIMETZ adalah UTC di tabel pengguna dan tabel sistem Amazon Redshift. 

## TIMESTAMP
<a name="r_Datetime_types-timestamp"></a>

TIMESTAMP adalah alias TIMESTAMP TANPA ZONA WAKTU.

Gunakan tipe data TIMESTAMP untuk menyimpan nilai stempel waktu lengkap yang menyertakan tanggal dan waktu hari. 

Kolom TIMESTAMP menyimpan nilai dengan presisi maksimal enam digit selama pecahan detik.

Jika Anda menyisipkan tanggal ke kolom TIMESTAMP, atau tanggal dengan nilai stempel waktu sebagian, nilai tersebut secara implisit diubah menjadi nilai stempel waktu penuh. Nilai stempel waktu penuh ini memiliki nilai default (00) untuk jam, menit, dan detik yang hilang. Nilai zona waktu dalam string masukan diabaikan.

Secara default, nilai TIMESTAMP adalah UTC di tabel pengguna dan tabel sistem Amazon Redshift. 

## TIMESTAMPTZ
<a name="r_Datetime_types-timestamptz"></a>

TIMESTAMPTZ adalah alias dari TIMESTAMP WITH TIME ZONE.

Gunakan tipe data TIMESTAMPTZ untuk memasukkan nilai stempel waktu lengkap yang mencakup tanggal, waktu hari, dan zona waktu. Ketika nilai input menyertakan zona waktu, Amazon Redshift menggunakan zona waktu untuk mengonversi nilai ke UTC dan menyimpan nilai UTC.

Untuk melihat daftar nama zona waktu yang didukung, jalankan perintah berikut. 

```
select pg_timezone_names();
```

 Untuk melihat daftar singkatan zona waktu yang didukung, jalankan perintah berikut. 

```
select pg_timezone_abbrevs();
```

Anda juga dapat menemukan informasi terkini tentang zona waktu di [Database Zona Waktu IANA](https://www.iana.org/time-zones).

Tabel berikut memiliki contoh format zona waktu. 


| format | Contoh | 
| --- | --- | 
|  dd mon hh:mi:ss yyyy tz  |  17 Des 07:37:16 1997 PST   | 
|  mm/dd/yyyyhh:mi: ss.ss tz  |  12/17/1997 07:37:16.00 PST  | 
|  mm/dd/yyyyhh:mi: ss.ss tz  |  12/17/1997 07:37:16.00 US/Pasifik  | 
|  yyyy-mm-dd hh:mi: ss\$1/- tz  |  1997-12-17 07:37:16-08   | 
| dd.mm.yyyy hh:mi:ss tz |  17.12.1997 07:37:16.00 PST  | 

Kolom TIMESTAMPTZ menyimpan nilai hingga maksimum enam digit presisi untuk detik pecahan.

Jika Anda menyisipkan tanggal ke kolom TIMESTAMPTZ, atau tanggal dengan stempel waktu sebagian, nilainya secara implisit diubah menjadi nilai stempel waktu penuh. Nilai stempel waktu penuh ini memiliki nilai default (00) untuk jam, menit, dan detik yang hilang.

Nilai TIMESTAMPTZ adalah UTC dalam tabel pengguna.

# Contoh dengan tipe datetime
<a name="r_Examples_with_datetime_types"></a>

Berikut ini, Anda dapat menemukan contoh untuk bekerja dengan tipe datetime yang didukung oleh Amazon Redshift.

## Contoh tanggal
<a name="r_Examples_with_datetime_types-date-examples"></a>

Contoh berikut menyisipkan tanggal yang memiliki format berbeda dan menampilkan output. 

```
create table datetable (start_date date, end_date date);
```

```
insert into datetable values ('2008-06-01','2008-12-31');

insert into datetable values ('Jun 1,2008','20081231');
```

```
select * from datetable order by 1;

start_date |  end_date
-----------------------
2008-06-01 | 2008-12-31
2008-06-01 | 2008-12-31
```

Jika Anda memasukkan nilai stempel waktu ke kolom DATE, bagian waktu diabaikan dan hanya tanggal yang dimuat.

## Contoh waktu
<a name="r_Examples_with_datetime_types-time-examples"></a>

Contoh berikut menyisipkan TIME dan TIMETZ nilai yang memiliki format yang berbeda dan menampilkan output.

```
create table timetable (start_time time, end_time timetz);
```

```
insert into timetable values ('19:11:19','20:41:19 UTC');
insert into timetable values ('191119', '204119 UTC');
```

```
select * from timetable order by 1;
start_time |  end_time
------------------------
 19:11:19  | 20:41:19+00
 19:11:19  | 20:41:19+00
```

## Contoh cap waktu
<a name="r_Examples_with_datetime_types-timestamp-examples"></a>

Jika Anda memasukkan tanggal ke kolom TIMESTAMP atau TIMESTAMPTZ, waktu defaultnya adalah tengah malam. Misalnya, jika Anda memasukkan literal`20081231`, nilai yang disimpan adalah`2008-12-31 00:00:00`. 

Untuk mengubah zona waktu untuk sesi saat ini, gunakan [SET](r_SET.md) perintah untuk mengatur parameter [timezone](r_timezone_config.md) konfigurasi.

Contoh berikut menyisipkan stempel waktu yang memiliki format berbeda dan menampilkan tabel yang dihasilkan. 

```
create table tstamp(timeofday timestamp, timeofdaytz timestamptz);

insert into tstamp values('Jun 1,2008  09:59:59', 'Jun 1,2008 09:59:59 EST' );
insert into tstamp values('Dec 31,2008 18:20','Dec 31,2008 18:20');
insert into tstamp values('Jun 1,2008  09:59:59 EST', 'Jun 1,2008 09:59:59');

SELECT * FROM tstamp;

+---------------------+------------------------+
|      timeofday      |      timeofdaytz       |
+---------------------+------------------------+
| 2008-06-01 09:59:59 | 2008-06-01 14:59:59+00 |
| 2008-12-31 18:20:00 | 2008-12-31 18:20:00+00 |
| 2008-06-01 09:59:59 | 2008-06-01 09:59:59+00 |
+---------------------+------------------------+
```

# Tanggal, waktu, dan literal stempel waktu
<a name="r_Date_and_time_literals"></a>

Berikut ini adalah aturan untuk bekerja dengan literal tanggal, waktu, dan stempel waktu yang didukung oleh Amazon Redshift. 

## Tanggal
<a name="r_Date_and_time_literals-dates"></a>

Tanggal input berikut adalah semua contoh valid dari nilai tanggal literal untuk tipe data DATE yang dapat Anda muat ke dalam tabel Amazon Redshift. `MDY DateStyle`Mode default diasumsikan berlaku. Mode ini berarti bahwa nilai bulan mendahului nilai hari dalam string seperti `1999-01-08` dan. `01/02/00` 

**catatan**  
Tanggal atau stempel waktu literal harus dilampirkan dalam tanda kutip saat Anda memuatnya ke dalam tabel.

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/dg/r_Date_and_time_literals.html)

## Kali
<a name="r_Date_and_time_literals-times"></a>

Waktu input berikut adalah semua contoh valid dari nilai waktu literal untuk tipe data TIME dan TIMETZ yang dapat Anda muat ke dalam tabel Amazon Redshift. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/dg/r_Date_and_time_literals.html)

## Stempel waktu
<a name="r_Date_and_time_literals-timestamps"></a>

Stempel waktu masukan berikut adalah semua contoh valid dari nilai waktu literal untuk tipe data TIMESTAMP dan TIMESTAMPTZ yang dapat Anda muat ke dalam tabel Amazon Redshift. Semua literal tanggal yang valid dapat digabungkan dengan literal waktu berikut. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/dg/r_Date_and_time_literals.html)

## Nilai datetime khusus
<a name="r_Date_and_time_literals-special-datetime-values"></a>

Nilai khusus berikut dapat digunakan sebagai literal datetime dan sebagai argumen untuk fungsi tanggal. Mereka membutuhkan tanda kutip tunggal dan dikonversi ke nilai stempel waktu biasa selama pemrosesan kueri. 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/dg/r_Date_and_time_literals.html)

Contoh berikut menunjukkan bagaimana `now` dan `today` bekerja dengan fungsi DATEADD.

```
select dateadd(day,1,'today');

date_add
---------------------
2009-11-17 00:00:00
(1 row)

select dateadd(day,1,'now');

date_add
----------------------------
2009-11-17 10:45:32.021394
(1 row)
```

# Tipe data interval dan literal
<a name="r_interval_data_types"></a>

Anda dapat menggunakan tipe data interval untuk menyimpan durasi waktu dalam unit seperti,,,`seconds`, `minutes``hours`, `days``months`, dan`years`. Tipe data interval dan literal dapat digunakan dalam perhitungan datetime, seperti, menambahkan interval ke tanggal dan stempel waktu, menjumlahkan interval, dan mengurangi interval dari tanggal atau stempel waktu. Literal interval dapat digunakan sebagai nilai masukan untuk kolom tipe data interval dalam tabel. 

## Sintaks tipe data interval
<a name="r_interval_data_types-syntax"></a>

Untuk menentukan tipe data interval untuk menyimpan durasi waktu dalam tahun dan bulan:

```
INTERVAL year_to_month_qualifier
```

Untuk menentukan tipe data interval untuk menyimpan durasi dalam hari, jam, menit, dan detik:

```
INTERVAL day_to_second_qualifier [ (fractional_precision) ]
```

## Sintaks interval literal
<a name="r_interval_data_types-syntax-literal"></a>

Untuk menentukan interval literal untuk menentukan durasi waktu dalam tahun dan bulan:

```
INTERVAL quoted-string year_to_month_qualifier
```

Untuk menentukan interval literal untuk menentukan durasi dalam hari, jam, menit, dan detik:

```
INTERVAL quoted-string day_to_second_qualifier [ (fractional_precision) ]
```

## Pendapat
<a name="r_interval_data_types-arguments"></a>

 *string yang dikutip*   
Menentukan nilai numerik positif atau negatif menentukan kuantitas dan unit datetime sebagai string input. **Jika *string yang dikutip* hanya berisi numerik, maka Amazon Redshift menentukan unit dari year\$1to\$1month\$1qualifier atau day\$1to\$1second\$1qualifier.** Misalnya, `'23' MONTH` mewakili`1 year 11 months`, `'-2' DAY` mewakili`-2 days 0 hours 0 minutes 0.0 seconds`, `'1-2' MONTH` mewakili`1 year 2 months`, dan `'13 day 1 hour 1 minute 1.123 seconds' SECOND` mewakili`13 days 1 hour 1 minute 1.123 seconds`. Untuk informasi selengkapnya tentang format keluaran suatu interval, lihat[Gaya interval](#r_interval_data_types-interval-styles).

 *year\$1to\$1month\$1qualifier*   
Menentukan rentang interval. Jika Anda menggunakan qualifier dan membuat interval dengan satuan waktu yang lebih kecil dari qualifier, Amazon Redshift memotong dan membuang bagian interval yang lebih kecil. Nilai yang valid untuk *year\$1to\$1month\$1qualifier* adalah:  
+ `YEAR`
+ `MONTH`
+ `YEAR TO MONTH`

 *day\$1to\$1second\$1qualifier*   
Menentukan rentang interval. Jika Anda menggunakan qualifier dan membuat interval dengan satuan waktu yang lebih kecil dari qualifier, Amazon Redshift memotong dan membuang bagian interval yang lebih kecil. Nilai yang valid untuk *day\$1to\$1second\$1qualifier* adalah:  
+ `DAY`
+ `HOUR`
+ `MINUTE`
+ `SECOND`
+ `DAY TO HOUR`
+ `DAY TO MINUTE`
+ `DAY TO SECOND`
+ `HOUR TO MINUTE`
+ `HOUR TO SECOND`
+ `MINUTE TO SECOND`
Output dari literal INTERVAL terpotong ke komponen INTERVAL terkecil yang ditentukan. Misalnya, saat menggunakan kualifikasi MINUTE, Amazon Redshift membuang satuan waktu yang lebih kecil dari MINUTE.  

```
select INTERVAL '1 day 1 hour 1 minute 1.123 seconds' MINUTE
```
Nilai yang dihasilkan terpotong menjadi. `'1 day 01:01:00'`

 *fractional\$1precision*   
Parameter opsional yang menentukan jumlah digit fraksional yang diizinkan dalam interval. Argumen *fractional\$1precision* seharusnya hanya ditentukan jika interval Anda berisi SECOND. Misalnya, `SECOND(3)` buat interval yang memungkinkan hanya tiga digit pecahan, seperti 1,234 detik. Jumlah maksimum digit fraksional adalah enam.

Konfigurasi sesi `interval_forbid_composite_literals` menentukan apakah kesalahan dikembalikan ketika interval ditentukan dengan bagian YEAR TO MONTH dan DAY TO SECOND. Untuk informasi selengkapnya, lihat [interval\$1forbid\$1composite\$1literal](r_interval_forbid_composite_literals.md).

## Aritmatika interval
<a name="r_interval_data_types-arithmetic"></a>

Anda dapat menggunakan nilai interval dengan nilai datetime lainnya untuk melakukan operasi aritmatika. Tabel berikut menjelaskan operasi yang tersedia dan jenis data apa yang dihasilkan dari setiap operasi. 

**catatan**  
 Operasi yang dapat menghasilkan keduanya `date` dan `timestamp` hasil melakukannya berdasarkan satuan waktu terkecil yang terlibat dalam persamaan. Misalnya, ketika Anda menambahkan `interval` ke hasilnya adalah `date` jika itu adalah interval TAHUN KE BULAN, dan stempel waktu jika itu adalah interval HARI KE KEDUA. `date` 

Operasi di mana operan pertama adalah `interval` menghasilkan hasil sebagai berikut untuk operan kedua yang diberikan:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/dg/r_interval_data_types.html)

Operasi di mana operan pertama adalah `date` menghasilkan hasil sebagai berikut untuk operan kedua yang diberikan:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/dg/r_interval_data_types.html)

Operasi di mana operan pertama adalah `timestamp` menghasilkan hasil sebagai berikut untuk operan kedua yang diberikan:

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/redshift/latest/dg/r_interval_data_types.html)

## Gaya interval
<a name="r_interval_data_types-interval-styles"></a>

Anda dapat menggunakan [SET](r_SET.md) perintah SQL untuk mengubah format tampilan output dari nilai interval Anda. Saat Anda menggunakan tipe data interval di SQL, lemparkan ke teks untuk melihat gaya interval yang diharapkan, misalnya,`YEAR TO MONTH::text`. Nilai yang tersedia untuk SET `IntervalStyle` nilainya adalah:
+ `postgres`— mengikuti gaya PostgreSQL. Ini adalah opsi default.
+ `postgres_verbose`— mengikuti gaya verbose PostgreSQL.
+ `sql_standard`— mengikuti gaya literal interval standar SQL.

Perintah berikut menetapkan gaya interval ke`sql_standard`.

```
SET IntervalStyle to 'sql_standard';
```

**format keluaran postgres**

Berikut ini adalah format output untuk gaya `postgres` interval. Setiap nilai numerik bisa negatif.

```
'<numeric> <unit> [, <numeric> <unit> ...]'
```

```
select INTERVAL '1-2' YEAR TO MONTH::text 

varchar
---------------
1 year 2 mons
```

```
select INTERVAL '1 2:3:4.5678' DAY TO SECOND::text

varchar
------------------
1 day 02:03:04.5678
```

**format keluaran postgres\$1verbose**

sintaks postgres\$1verbose mirip dengan postgres, tetapi output postgres\$1verbose juga berisi satuan waktu.

```
'[@] <numeric> <unit> [, <numeric> <unit> ...] [direction]'
```

```
select INTERVAL '1-2' YEAR TO MONTH::text 

varchar
-----------------
@ 1 year 2 mons
```

```
select INTERVAL '1 2:3:4.5678' DAY TO SECOND::text

varchar
---------------------------
@ 1 day 2 hours 3 mins 4.56 secs
```

**format keluaran sql\$1standard**

Nilai interval tahun ke bulan diformat sebagai berikut. Menentukan tanda negatif sebelum interval menunjukkan interval adalah nilai negatif dan berlaku untuk seluruh interval.

```
'[-]yy-mm'
```

Interval hari ke nilai kedua diformat sebagai berikut.

```
'[-]dd hh:mm:ss.ffffff'
```

```
SELECT INTERVAL '1-2' YEAR TO MONTH::text 
  
varchar   
-------
1-2
```

```
select INTERVAL '1 2:3:4.5678' DAY TO SECOND::text 

varchar
---------------
1 2:03:04.5678
```

## Contoh tipe data interval
<a name="r_interval_data_types-examples"></a>

Contoh berikut menunjukkan bagaimana menggunakan tipe data INTERVAL dengan tabel.

```
create table sample_intervals (y2m interval month, h2m interval hour to minute);
insert into sample_intervals values (interval '20' month, interval '2 days 1:1:1.123456' day to second);
select y2m::text, h2m::text from sample_intervals;


      y2m      |       h2m      
---------------+-----------------
 1 year 8 mons | 2 days 01:01:00
```

```
update sample_intervals set y2m = interval '2' year where y2m = interval '1-8' year to month;
select * from sample_intervals;

   y2m   |       h2m       
---------+-----------------
 2 years | 2 days 01:01:00
```

```
delete from sample_intervals where h2m = interval '2 1:1:0' day to second;
select * from sample_intervals;

 y2m | h2m 
-----+-----
```

## Contoh literal interval
<a name="r_interval_data_types_literals-examples"></a>

Contoh berikut dijalankan dengan gaya interval diatur ke`postgres`.

Contoh berikut menunjukkan cara membuat INTERVAL literal 1 tahun.

```
select INTERVAL '1' YEAR 

intervaly2m
---------------
1 years 0 mons
```

Jika Anda menentukan *string yang dikutip* yang melebihi kualifikasi, satuan waktu yang tersisa dipotong dari interval. Dalam contoh berikut, interval 13 bulan menjadi 1 tahun dan 1 bulan, tetapi sisanya 1 bulan ditinggalkan karena kualifikasi YEAR.

```
select INTERVAL '13 months' YEAR

intervaly2m
---------------
1 years 0 mons
```

Jika Anda menggunakan qualifier yang lebih rendah dari string interval Anda, unit sisa disertakan.

```
select INTERVAL '13 months' MONTH

intervaly2m
---------------
1 years 1 mons
```

Menentukan presisi dalam interval Anda memotong jumlah digit pecahan ke presisi yang ditentukan.

```
select INTERVAL '1.234567' SECOND (3)

intervald2s
--------------------------------
0 days 0 hours 0 mins 1.235 secs
```

Jika Anda tidak menentukan presisi, Amazon Redshift menggunakan presisi maksimum 6.

```
select INTERVAL '1.23456789' SECOND

intervald2s
-----------------------------------
0 days 0 hours 0 mins 1.234567 secs
```

Contoh berikut menunjukkan cara membuat interval berkisar.

```
select INTERVAL '2:2' MINUTE TO SECOND

intervald2s
------------------------------
0 days 0 hours 2 mins 2.0 secs
```

Kualifikasi mendikte unit yang Anda tentukan. Misalnya, meskipun contoh berikut menggunakan *string kutipan* yang sama dari '2:2' seperti contoh sebelumnya, Amazon Redshift mengakui bahwa ia menggunakan satuan waktu yang berbeda karena qualifier.

```
select INTERVAL '2:2' HOUR TO MINUTE

intervald2s
------------------------------
0 days 2 hours 2 mins 0.0 secs
```

Singkatan dan bentuk jamak dari masing-masing unit juga didukung. Misalnya,, `5s``5 second`, dan `5 seconds` merupakan interval yang setara. Unit yang didukung adalah tahun, bulan, jam, menit, dan detik.

```
select INTERVAL '5s' SECOND

intervald2s
------------------------------
0 days 0 hours 0 mins 5.0 secs
```

```
select INTERVAL '5 HOURS' HOUR

intervald2s
------------------------------
0 days 5 hours 0 mins 0.0 secs
```

```
select INTERVAL '5 h' HOUR

intervald2s
------------------------------
0 days 5 hours 0 mins 0.0 secs
```

# Contoh literal interval tanpa sintaks qualifier
<a name="r_interval_literals"></a>

**catatan**  
Contoh berikut menunjukkan menggunakan interval literal tanpa `YEAR TO MONTH` atau `DAY TO SECOND` kualifikasi. Untuk informasi tentang penggunaan literal interval yang direkomendasikan dengan kualifikasi, lihat[Tipe data interval dan literal](r_interval_data_types.md).

Gunakan interval literal untuk mengidentifikasi periode waktu tertentu, seperti `12 hours` atau`6 months`. Anda dapat menggunakan literal interval ini dalam kondisi dan perhitungan yang melibatkan ekspresi datetime. 

 Interval literal dinyatakan sebagai kombinasi kata kunci INTERVAL dengan kuantitas numerik dan bagian tanggal yang didukung, misalnya `INTERVAL '7 days'` atau`INTERVAL '59 minutes'`. Anda dapat menghubungkan beberapa kuantitas dan unit untuk membentuk interval yang lebih tepat, misalnya:`INTERVAL '7 days, 3 hours, 59 minutes'`. Singkatan dan bentuk jamak dari setiap unit juga didukung; misalnya:`5 s`,`5 second`, dan `5 seconds` merupakan interval yang setara.

Jika Anda tidak menentukan bagian tanggal, nilai interval mewakili detik. Anda dapat menentukan nilai kuantitas sebagai pecahan (misalnya:`0.5 days`).

Contoh berikut menunjukkan serangkaian perhitungan dengan nilai interval yang berbeda.

Berikut ini menambahkan 1 detik ke tanggal yang ditentukan.

```
select caldate + interval '1 second' as dateplus from date
where caldate='12-31-2008';
dateplus
---------------------
2008-12-31 00:00:01
(1 row)
```

Berikut ini menambahkan 1 menit ke tanggal yang ditentukan.

```
select caldate + interval '1 minute' as dateplus from date
where caldate='12-31-2008';
dateplus
---------------------
2008-12-31 00:01:00
(1 row)
```

Berikut ini menambahkan 3 jam dan 35 menit ke tanggal yang ditentukan.

```
select caldate + interval '3 hours, 35 minutes' as dateplus from date
where caldate='12-31-2008';
dateplus
---------------------
2008-12-31 03:35:00
(1 row)
```

Berikut ini menambahkan 52 minggu ke tanggal yang ditentukan.

```
select caldate + interval '52 weeks' as dateplus from date
where caldate='12-31-2008';
dateplus
---------------------
2009-12-30 00:00:00
(1 row)
```

Berikut ini menambahkan 1 minggu, 1 jam, 1 menit, dan 1 detik ke tanggal yang ditentukan.

```
select caldate + interval '1w, 1h, 1m, 1s' as dateplus from date
where caldate='12-31-2008';
dateplus
---------------------
2009-01-07 01:01:01
(1 row)
```

Berikut ini menambahkan 12 jam (setengah hari) ke tanggal yang ditentukan.

```
select caldate + interval '0.5 days' as dateplus from date
where caldate='12-31-2008';
dateplus
---------------------
2008-12-31 12:00:00
(1 row)
```

Berikut ini mengurangi 4 bulan dari 15 Februari 2023 dan hasilnya adalah 15 Oktober 2022.

```
select date '2023-02-15' - interval '4 months';

?column?
---------------------
2022-10-15 00:00:00
```

Berikut ini mengurangi 4 bulan dari 31 Maret 2023 dan hasilnya adalah 30 November 2022. Perhitungan mempertimbangkan jumlah hari dalam sebulan.

```
select date '2023-03-31' - interval '4 months';

?column?
---------------------
2022-11-30 00:00:00
```