DuckDB

Fungsi SQL DuckDB

Database analitik in-process yang cepat. 175 fungsi tersedia.

Menampilkan 24 dari 175 fungsi

CONTAINS

String

Mengecek apakah string mengandung substring tertentu. Mengembalikan boolean TRUE/FALSE. Lebih readable dari STRPOS > 0.

Tipe hasil: BOOLEAN

COUNT

Aggregate

Menghitung jumlah baris atau nilai non-NULL dalam sebuah kolom. Fungsi aggregate paling dasar dan sering digunakan dalam analisis data dengan DuckDB.

Tipe hasil: BIGINT

COUNT_WINDOW

Window

Menghitung running count atau jumlah kumulatif menggunakan window function. Berguna untuk penomoran dan analisis frekuensi.

Tipe hasil: BIGINT

CUME_DIST

Window

Menghitung distribusi kumulatif - proporsi baris yang memiliki nilai kurang dari atau sama dengan baris saat ini.

Tipe hasil: DOUBLE

CURRENT_DATE

Date & Time

Mengembalikan tanggal saat ini (tanpa waktu). Nilai tetap konsisten dalam satu transaction.

Tipe hasil: DATE

CURRENT_TIME

Date & Time

Mengembalikan waktu saat ini (jam, menit, detik) tanpa tanggal. Berguna untuk timestamp dan logging.

Tipe hasil: TIME

CURRENT_TIMESTAMP

Date & Time

Mengembalikan tanggal dan waktu saat ini dengan timezone. Alias standar SQL dari NOW().

Tipe hasil: TIMESTAMP WITH TIME ZONE

DATE_ADD

Date & Time

Menambahkan interval waktu ke sebuah tanggal atau timestamp. DuckDB mendukung berbagai sintaks untuk operasi ini.

Tipe hasil: DATE/TIMESTAMP (sesuai input)

DATE_DIFF

Date & Time

Menghitung selisih antara dua tanggal dalam unit tertentu. Mengembalikan nilai integer.

Tipe hasil: BIGINT

DATE_PART

Date & Time

Mengekstrak komponen tertentu dari date/timestamp. Fungsi alternatif untuk EXTRACT dengan sintaks berbeda.

Tipe hasil: DOUBLE

DATE_SUB

Date & Time

Mengurangi interval waktu dari sebuah tanggal atau timestamp. Kebalikan dari DATE_ADD.

Tipe hasil: DATE/TIMESTAMP (sesuai input)

DATE_TRUNC

Date & Time

Memotong (truncate) date/timestamp ke presisi tertentu. Sangat berguna untuk grouping data berdasarkan periode waktu.

Tipe hasil: TIMESTAMP

DAY

Date & Time

Mengekstrak komponen hari dalam bulan dari tanggal atau timestamp. Mengembalikan angka 1-31.

Tipe hasil: INTEGER

DAYOFWEEK

Date & Time

Mengekstrak hari dalam minggu dari tanggal. Mengembalikan 0 (Minggu) sampai 6 (Sabtu) dalam standar ISO.

Tipe hasil: INTEGER

DAYOFYEAR

Date & Time

Mengekstrak hari dalam tahun dari tanggal (1-366). Berguna untuk analisis seasonal dan time-series.

Tipe hasil: INTEGER

DECODE

Conversion

Mengkonversi Base64 encoded string kembali ke binary data (BLOB).

Tipe hasil: BLOB

DEGREES

Math

Mengkonversi sudut dari radian ke derajat. Kebalikan dari RADIANS.

Tipe hasil: DOUBLE

DENSE_RANK

Window

Memberikan ranking ke setiap baris tanpa gap. Nilai yang sama mendapat ranking sama, dan ranking berikutnya tidak di-skip.

Tipe hasil: BIGINT

ENCODE

Conversion

Mengkonversi binary data (BLOB) ke string menggunakan Base64 encoding.

Tipe hasil: VARCHAR

EPOCH

Date & Time

Mengkonversi timestamp ke Unix epoch (detik sejak 1970-01-01 00:00:00 UTC). Berguna untuk interoperabilitas dengan sistem lain.

Tipe hasil: DOUBLE (seconds with fractional)

EPOCH_MS

Conversion

Mengkonversi Unix epoch dalam milidetik ke TIMESTAMP. Berguna untuk data dari JavaScript/Java.

Tipe hasil: TIMESTAMP

EXP

Math

Menghitung e pangkat number (e^x). e adalah konstanta matematika ≈ 2.718281828.

Tipe hasil: DOUBLE

EXTRACT

Date & Time

Mengekstrak komponen tertentu dari nilai date atau timestamp. Mengembalikan nilai numerik.

Tipe hasil: BIGINT (atau DOUBLE untuk EPOCH)

FIRST

Aggregate

Mengembalikan nilai pertama dari sebuah kolom dalam group. Tanpa ORDER BY, hasilnya non-deterministik (bisa berubah-ubah).

Tipe hasil: Sama dengan tipe input