Operasi Aritmatik Part 3

Menggunakan Fungsi Matematik

Dalam tulisan ini kita akan  membahas tentang penggunaan fungsi-fungsi SQL yang mendukung bilangan matematik. Fungsi-fungsi tersebut dapat digunakan untuk memformat data berbentuk integer atau numerik.

ROUND

Fungsi ROUND digunakan untuk membulatkan bilangan desimal menjadi satu nilai di atasnya ataupun nilai di bawahnya. Hal ini dapat dilakukan sesuai dengan kondisi nilai desimal yang ada di belakangnya. Jika nilai desimal (nilai di belakang koma) lebih kecil dari 5, maka bilangan akan dibulatkan ke bawah. Sedangkan jika nilai desimalnya lebih dari 5, maka bilangan akan dibulatkan satu angka di atasnya.

mysql> SELECT ROUND(2.45), ROUND(2.50), ROUND(2.51), ROUND(2.56);

+-------------+-------------+-------------+-------------+
| ROUND(2.45) | ROUND(2.50) | ROUND(2.51) | ROUND(2.56)
+-------------+-------------+-------------+-------------+
|           2 |           2 |           3 |           3
+-------------+-------------+-------------+-------------+

1 row in set (0.00 sec)

mysql> SELECT ROUND(2.250, 1), ROUND(2.251, 1), ROUND(2.259, 1);

+-----------------+-----------------+-----------------+
| ROUND(2.250, 1) | ROUND(2.251, 1) | ROUND(2.259, 1) |
+-----------------+-----------------+-----------------+
|             2.2 |             2.3 |             2.3 |
+-----------------+-----------------+-----------------+

1 row in set (0.00 sec)

mysql> SELECT ROUND(2.250, 2), ROUND(2.251, 2), ROUND(2.259, 2);

+-----------------+-----------------+-----------------+
| ROUND(2.250, 2) | ROUND(2.251, 2) | ROUND(2.259, 2) |
+-----------------+-----------------+-----------------+
|            2.25 |            2.25 |            2.26 |
+-----------------+-----------------+-----------------+

1 row in set (0.00 sec)

mysql> SELECT ROUND(2.250, 0), ROUND(2.251, 0), ROUND(2.259, 0);

+-----------------+-----------------+-----------------+
| ROUND(2.250, 0) | ROUND(2.251, 0) | ROUND(2.259, 0) |
+-----------------+-----------------+-----------------+
|               2 |               2 |               2 |
+-----------------+-----------------+-----------------+

1 row in set (0.00 sec)

CEILING

Fungsi CEILING dapat digunakan untuk membulatkan suatu bilangan desimal menjadi satu nilai di atasnya. Nama alias dari fungsi di atas adalah CEIL. Dengan menggunakan fungsi CEILING, semua nilai desimal baik di bawah nilai 5 atau di atas 5 akan tetap dibulatkan satu nilai di atasnya.

mysql> SELECT CEILING(2.23), CEILING(2.55), CEILING(2.90);

+---------------+---------------+---------------+
| CEILING(2.23) | CEILING(2.55) | CEILING(2.90) |
+---------------+---------------+---------------+
|             3 |             3 |             3 |
+---------------+---------------+---------------+

1 row in set (0.00 sec)


Begitu juga dengan bilangan negatif desimal, pembulatan juga akan tetap dilakukan ke dalam satu nilai di atasnya.

mysql> SELECT CEILING(-2.23), CEILING(-2.55), CEILING(-2.90);

+----------------+----------------+----------------+
| CEILING(-2.23) | CEILING(-2.55) | CEILING(-2.90) |
+----------------+----------------+----------------+
|             -2 |             -2 |             -2 |
+----------------+----------------+----------------+

1 row in set (0.01 sec)</pre>
mysql> SELECT CEIL(-1.10), CEIL(-1.99);

+-------------+-------------+
 | CEIL(-1.10) | CEIL(-1.99) |
 +-------------+-------------+
 |          -1 |          -1 |
 +-------------+-------------+

1 row in set (0.00 sec)

FLOOR

Berbeda dengan fungsi sebelumnya, fungsi FLOOR digunakan untuk membulatkan suatu bilangan desimal menjadi satu nilai di bawahnya. Dengan menggunakan fungsi ini, semua nilai desimal baik di bawah nilai 5 atau di atas 5 akan tetap dibulatkan satu nilai di bawahnya. Dengan arti lain, fungsi ini akan membuang nilai desimal, sehingga hasilnya adalah nilai asli dari suatu bilangan. Untuk lebih mudah memahaminya, ikutilah contoh praktik di bawah.

mysql> SELECT FLOOR(2.01), FLOOR(2.45), FLOOR(2.95);

+-------------+-------------+-------------+
| FLOOR(2.01) | FLOOR(2.45) | FLOOR(2.95) |
+-------------+-------------+-------------+
|           2 |           2 |           2 |
+-------------+-------------+-------------+

1 row in set (0.00 sec)

Jika bilangan desimalnya berbentuk negatif, maka nilainya akan diturunkan menjadi satu nilai yang lebih kecil. Misalnya, jika ada nilai -2, maka akan diturunkan menjadi -3.

mysql> SELECT FLOOR(-2.01), FLOOR(-2.45), FLOOR(-2.95);

+--------------+--------------+--------------+
| FLOOR(-2.01) | FLOOR(-2.45) | FLOOR(-2.95) |
+--------------+--------------+--------------+
|           -3 |           -3 |           -3 |
+--------------+--------------+--------------+

1 row in set (0.00 sec)

ABS

Fungsi ABS digunakan untuk mendapatkan nilai absolut (nilai positif) dari suatu bilangan. Jika kita memiliki nilai negatif, maka nilai yang dihasilkan akan menjadi bilangan positif. Misalnya:

mysql> SELECT ABS(3), ABS(-3),  ABS(-3.34);

+--------+---------+------------+
| ABS(3) | ABS(-3) | ABS(-3.34) |
+--------+---------+------------+
|      3 |       3 |       3.34 |
+--------+---------+------------+

1 row in set (0.00 sec)

DIV

Fungsi DIV digunakan untuk mendapatkan nilai hasil pembagian dari dua buah bilangan. Nilai yang dihasilkan dari fungsi ini bebentuk bilangan asli tanpa pecahan. Perintahnya sebagai berikut: Penggunaan fungsi ini terletak ditengah-tengah dua bilangan. Untuk lebih jelasnya, Anda dapat melihat contoh berikut:

mysql> SELECT 5 DIV 2, 5 DIV 3, 9 DIV 3;

+---------+---------+---------+
| 5 DIV 2 | 5 DIV 3 | 9 DIV 3 |
+---------+---------+---------+
|       2 |       1 |       3 |
+---------+---------+---------+
1 row in set (0.01 sec)

mysql> SELECT 5/ 2, 5 /3, 9 / 3;

+-------+-------+-------+
| 5 / 2 | 5 / 3 | 9 / 3 |
+-------+-------+-------+
|  2.50 |  1.67 |  3.00 |
+-------+-------+-------+

1 row in set (0.00 sec)

MOD

Fungsi MOD digunakan untuk mendapatkan modulus atau sisa pembagian dari operasi pembagian. Jika pada fungsi DIV hasil dari sisa pembagiannya diabaikan, maka pada fungsi ini malah yang menjadi hasilnya. Bilangan yang akan dibagi memiliki nilai lebih besar dari bilangan pembaginya. Untuk mempermudah pemahaman, Anda dapat mempraktikkan beberapa perintah di bawah:

mysql> SELECT MOD(5,2), MOD(5, 3), MOD(9, 3);

+----------+-----------+-----------+
| MOD(5,2) | MOD(5, 3) | MOD(9, 3) |
+----------+-----------+-----------+
|        1 |         2 |         0 |
+----------+-----------+-----------+
1 row in set (0.01 sec)

mysql> SELECT 5 % 2, 5 % 3, 9 % 3;

+-------+-------+-------+
| 5 % 2 | 5 % 3 | 9 % 3 |
+-------+-------+-------+
|     1 |     2 |     0 |
+-------+-------+-------+

1 row in set (0.00 sec)

POW

Fungsi POW digunakan untuk mencari nilai pangkat dari suatu bilangan. Anda pasti sudah paham, bahwa pangkat merupakan operasi perkalian suatu nilai dengan dirinya sendiri sebanyak jumlah pemangkatnya. Pada praktiknya, penggunaan fungsi POW dapat digantikan dengan POWER, kedua fungsi ini menghasilkan nilai yang sama. Perhatikan contoh berikut:

mysql> SELECT POW(2, 3), POWER(2, 4), POW(4, 2);

+-----------+-------------+-----------+
| POW(2, 3) | POWER(2, 4) | POW(4, 2) |
+-----------+-------------+-----------+
|         8 |          16 |        16 |
+-----------+-------------+-----------+

1 row in set (0.01 sec)

2 Responses to “Operasi Aritmatik Part 3”

  1. basyariah Says:

    heheheh..
    \bro..blogmu tek a[pik men..
    garai pengen kie….

  2. noryahya Says:

    lha iyo toh…


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: