Di PostgreSQL, floor()
fungsi yang digunakan untuk membulatkan angka ke bawah ke bilangan bulat terdekat.
Ini pada dasarnya kebalikan dari ceiling()
, yang membulatkan angka naik .
Ini juga mirip dengan round()
, kecuali bahwa itu hanya dibulatkan ke bawah. round()
fungsi akan membulatkan atau turun sesuai kebutuhan.
Sintaks
Sintaksnya seperti ini:
floor(dp or numeric)
Dimana dp
menunjukkan double precision
.
Jenis yang dikembalikan sama dengan jenis masukan.
Contoh
Berikut ini contoh untuk mendemonstrasikan penggunaannya.
SELECT floor(3.99);
Hasil:
3
Dalam hal ini pecahan detik adalah 99 dan angkanya dibulatkan ke bawah ke bilangan bulat terdekat.
Tidak mengherankan, saya mendapatkan hasil yang sama jika saya mengurangi pecahan detik untuk mengatakan, 15.
SELECT floor(3.15);
Hasil:
3
Bilangan Negatif
Berikut adalah contoh yang menggunakan angka negatif.
SELECT
floor(-3.99),
floor(-3.15);
Hasil:
floor | floor -------+------- -4 | -4
Lantai() vs Putaran()
Berikut adalah contoh yang menggambarkan perbedaan antara floor()
dan round()
.
SELECT
floor(3.99),
round(3.99);
Hasil:
floor | round -------+------- 3 | 4
Namun, jika saya mengurangi pecahan detik menjadi di bawah 50, keduanya mengembalikan hasil yang sama.
SELECT
floor(3.49),
round(3.49);
Hasil:
floor | round -------+------- 3 | 3
Lantai() vs Langit-langit()
Postgres juga memiliki ceiling()
fungsi, yang mirip dengan floor()
kecuali bahwa itu selalu membulatkan angka atas .
Berikut adalah contoh yang menunjukkan kedua sintaks secara berdampingan.
SELECT
ceiling(12.80),
floor(12.80);
Hasil:
ceiling | floor ---------+------- 13 | 12
Dan inilah contoh yang menggunakan nilai negatif.
SELECT
ceiling(-12.30),
floor(-12.30);
Hasil:
ceiling | floor ---------+------- -12 | -13