Di Oracle, CEIL() fungsi mengembalikan bilangan bulat terkecil yang lebih besar dari atau sama dengan argumennya.
Sintaks
Sintaksnya seperti ini:
CEIL(n)
Dimana n dapat berupa tipe data numerik atau tipe data nonnumerik apa pun yang dapat secara implisit dikonversi ke tipe data numerik.
Contoh
Ini contohnya:
SELECT CEIL(7.15)
FROM DUAL; Hasil:
CEIL(7.15)
_____________
8 Melewati nilai negatif menghasilkan hasil berikut:
SELECT CEIL(-7.15)
FROM DUAL; Hasil:
CEIL(-7.15)
______________
-7 Dibandingkan dengan ROUND()
CEIL() fungsinya berbeda dengan ROUND() fungsi. ROUND() function akan membulatkan angka ke bawah dalam beberapa kasus, sedangkan CEIL() selalu mengembalikan nilai integer terkecil lebih besar dari atau sama dengan argumennya.
SELECT
CEIL(7.15),
ROUND(7.15)
FROM DUAL; Hasil:
CEIL(7.15) ROUND(7.15)
_____________ ______________
8 7
Juga, ROUND() memungkinkan kita untuk menentukan jumlah tempat desimal yang akan dibulatkan menjadi:
SELECT
CEIL(7.15),
ROUND(7.15, 1)
FROM DUAL; Hasil:
CEIL(7.15) ROUND(7.15,1)
_____________ ________________
8 7.2 Argumen Non-Numerik
Argumen dapat berupa tipe data numerik apa pun atau tipe data nonnumerik apa pun yang dapat secara implisit dikonversi ke tipe data numerik.
Inilah yang terjadi ketika kami memberikan argumen non-numerik yang tidak dapat dikonversi ke tipe data numerik:
SELECT CEIL('Oops!')
FROM DUAL; Hasil:
Error starting at line : 1 in command -
SELECT CEIL('Oops!')
FROM DUAL
Error report -
ORA-01722: invalid number Nilai Null
Melewati null ke CEIL() mengembalikan null :
SET NULL 'null';
SELECT CEIL(null)
FROM DUAL; Hasil:
CEIL(NULL)
_____________
null
Secara default, SQLcl dan SQL*Plus mengembalikan ruang kosong setiap kali null terjadi sebagai akibat dari SQL SELECT penyataan.
Namun, Anda dapat menggunakan SET NULL untuk menentukan string berbeda yang akan dikembalikan. Di sini saya menetapkan bahwa string null harus dikembalikan.
Jumlah Argumen Salah
Memanggil CEIL() tanpa memberikan argumen apa pun mengembalikan kesalahan:
SELECT CEIL()
FROM DUAL; Hasil:
Error starting at line : 1 in command - SELECT CEIL() FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action:
Dan meneruskan jumlah argumen yang salah menghasilkan kesalahan:
SELECT CEIL(1, 2)
FROM DUAL; Hasil:
Error starting at line : 1 in command - SELECT CEIL(1, 2) FROM DUAL Error at Command Line : 1 Column : 8 Error report - SQL Error: ORA-00909: invalid number of arguments 00909. 00000 - "invalid number of arguments" *Cause: *Action:
Oracle juga memiliki FLOOR() fungsi yang mengembalikan bilangan bulat terbesar yang sama dengan atau kurang dari argumennya.