Di PostgreSQL, GREATEST()
fungsi mengembalikan nilai terbesar (atau terbesar) dari daftar sejumlah ekspresi.
GREATEST()
function tidak disertakan dalam standar SQL, tetapi merupakan ekstensi populer yang didukung oleh banyak RDBMS utama.
Sintaks
GREATEST(value [, ...])
Ini berarti bahwa kita dapat meneruskan satu atau lebih nilai ke fungsi.
Contoh
Berikut adalah contoh sederhana untuk ditunjukkan:
SELECT GREATEST( 3, 15, 7 );
Hasil:
15
String
Berikut ini contoh di mana semua argumen adalah string:
SELECT GREATEST( 'Bear', 'Zebra', 'Ant' );
Hasil:
Zebra
Tanggal
Berikut perbandingan string tanggal:
SELECT GREATEST(date '2027-01-01', date '2027-12-31');
Hasil:
2027-12-31
Jenis Data Umum
Semua ekspresi harus dapat dikonversi ke tipe data umum. Hasilnya akan menggunakan tipe ini.
Jika ekspresi tidak dapat dikonversi ke tipe data umum, terjadi kesalahan:
SELECT GREATEST( 3, 'Fifteen', 7 );
Hasil:
ERROR: invalid input syntax for type integer: "Fifteen" LINE 1: SELECT GREATEST( 3, 'Fifteen', 7 ); ^
Nilai Null
Nilai null diabaikan kecuali semua ekspresi null
. Jika semua ekspresi null
, lalu null
dikembalikan:
\pset null '<null>'
SELECT
GREATEST( 3, null, 7 ),
GREATEST( null, null, null );
Hasil:
greatest | greatest ----------+---------- 7 | <null>
Secara default, psql mengembalikan string kosong pada nilai null. Pada baris pertama dalam contoh ini saya menetapkan nilai null ke output <null>
sehingga memudahkan kita untuk melihat hasil null.
Argumen Tidak Ada
Memanggil GREATEST()
tanpa argumen apa pun menghasilkan kesalahan:
SELECT GREATEST();
Hasil:
ERROR: syntax error at or near ")" LINE 1: SELECT GREATEST(); ^
Namun, kita dapat melewatkan satu argumen tanpa kesalahan:
SELECT GREATEST( 1 );
Hasil:
1