PostgreSQL

Fungsi SQL PostgreSQL

Database open-source yang powerful dan populer. 183 fungsi tersedia.

Menampilkan 24 dari 183 fungsi

DATE_BIN

Date & Time

Membulatkan timestamp ke interval terdekat (bin). Lebih fleksibel dari DATE_TRUNC untuk interval custom.

Tipe hasil: timestamp/timestamptz

DATE_PART

Date & Time

Mengekstrak bagian tertentu dari tanggal atau timestamp. Sama dengan EXTRACT tapi dengan sintaks berbeda. Mengembalikan double precision.

Tipe hasil: double precision

DATE_TRUNC

Date & Time

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

Tipe hasil: timestamp / timestamptz

DECODE

String

Mengkonversi text representation ke binary data. Kebalikan dari ENCODE. Format: base64, hex, atau escape.

Tipe hasil: bytea

DEGREES

Math

Mengkonversi nilai dari radian ke derajat. Formula: degrees = radians * (180 / PI())

Tipe hasil: double precision

DENSE_RANK

Window

Memberikan ranking tanpa gap. Berbeda dengan RANK yang membuat gap setelah nilai sama, DENSE_RANK melanjutkan dengan angka berikutnya. Berguna untuk top-N queries.

Tipe hasil: bigint

ENCODE

String

Mengkonversi binary data ke text representation. Format: base64, hex, atau escape.

Tipe hasil: text

ENUM_FIRST

Conversion

Mengembalikan nilai pertama dari enum type. Berguna untuk mendapatkan default atau validasi enum.

Tipe hasil: anyenum

ENUM_LAST

Conversion

Mengembalikan nilai terakhir dari enum type. Berguna untuk validasi range enum.

Tipe hasil: anyenum

ENUM_RANGE

Conversion

Mengembalikan array berisi semua nilai enum dalam range. Tanpa argumen mengembalikan semua nilai.

Tipe hasil: anyarray

EVERY

Aggregate

Alias untuk BOOL_AND. Mengembalikan TRUE jika semua nilai input adalah TRUE. Nama EVERY lebih mudah dibaca dalam konteks query.

Tipe hasil: boolean

EXP

Math

Menghitung e (bilangan Euler, ~2.71828) dipangkatkan x. Fungsi eksponensial alami, kebalikan dari LN().

Tipe hasil: double precision

EXTRACT

Date & Time

Mengekstrak komponen tertentu dari timestamp atau interval, seperti tahun, bulan, hari, jam, dll.

Tipe hasil: numeric

FIRST_VALUE

Window

Mengembalikan nilai pertama dalam window frame. Berguna untuk mengambil nilai awal, baseline, atau referensi dalam perbandingan.

Tipe hasil: same as input

FLOOR

Math

Membulatkan angka ke bawah ke bilangan bulat terdekat. Berbeda dengan ROUND yang membulatkan ke terdekat, FLOOR selalu membulatkan ke bawah.

Tipe hasil: numeric

FORMAT

String

Memformat string menggunakan format specifiers mirip printf. Specifiers: %s (string), %I (identifier), %L (literal), %% (escape percent).

Tipe hasil: text

GREATEST

Conditional

Mengembalikan nilai terbesar dari daftar nilai. Mengabaikan NULL values kecuali semua NULL. Bisa untuk angka, string, tanggal, dll.

Tipe hasil: same as input

INITCAP

String

Mengubah huruf pertama setiap kata menjadi kapital (Title Case). Kata dipisahkan oleh karakter non-alphanumeric.

Tipe hasil: text

INTERVAL

Date & Time

Merepresentasikan durasi waktu. Bisa ditambah/dikurangi dari tanggal dan timestamp. INTERVAL adalah tipe data dan literal, bukan fungsi.

Tipe hasil: interval

ISFINITE

Date & Time

Mengecek apakah nilai date/timestamp/interval adalah finite (bukan infinity). PostgreSQL mendukung nilai infinity untuk date types.

Tipe hasil: boolean

JSONB_AGG

JSON

Aggregate function yang mengumpulkan nilai menjadi JSON array. Mirip JSON_AGG tapi menghasilkan jsonb (binary JSON) yang lebih efisien untuk indexing dan querying.

Tipe hasil: jsonb

JSONB_ARRAY_ELEMENTS

JSON

Mengekspansi JSONB array menjadi set of rows. Sama seperti JSON_ARRAY_ELEMENTS tapi untuk tipe jsonb.

Tipe hasil: setof jsonb

JSONB_ARRAY_LENGTH

JSON

Menghitung jumlah elemen dalam JSONB array. Versi JSONB dari JSON_ARRAY_LENGTH.

Tipe hasil: integer

JSONB_BUILD_ARRAY

JSON

Membuat JSONB array dari daftar nilai. Semua nilai dikonversi ke JSONB dan dikumpulkan menjadi satu array.

Tipe hasil: jsonb