Penggunaan if dan else di dalam MYSQL dan PHP
Halo sobat Tatamedia, web design di Surabaya dan Bali.
Kali ini kita akan sedikit belajar tentang penggunaan if di dalam syntax mysql, sehingga lebih mempersingkat query.
Secara umum, if di dalam mysql memiliki format sebagai berikut:
IF(kondisi, nilai jika benar, nilai jika salah)
di mana:
kondisi adalah parameter yang ingin diuji.
nilai jika benar adalah value yang ditetapkan jika kondisi di atas terpenuhi.
nilai jika salah adalah value yang ditetapkan jika kondisi di atas tidak terpenuhi.
Baca Juga: Tips Sukses Learn MySQL Bagi Pemula untuk Menjadi Data Scientist
Sebagai contoh, anggap kita memiliki table dengan nama table product dengan 2 kolom, yaitu kolom nama dan harga.
Data yang ada di dalam database adalah seperti berikut:
nama | harga
Product A | 1000
Product B | 1500
Product C | 2000
Product D | 5000
Product E | 10000
Kemudian kita coba menggunakan if di dalam query mysql untuk menampilkan produk dengan harga di bawah 2000:
<?php
$result=$db->doQuery("SELECT nama,IF(harga < ?, "Promo", "Normal") as promo from product", Array(2000));
?>
Dari perintah di atas kita akan mendapatkan hasil:
nama | promo
Product A | Promo
Product B | Promo
Product C | Normal
Product D | Normal
Product E | Normal
Dengan demikian, di dalam script PHP, kita cukup memanggil nilai dengan $row['promo'].
Memang kita bisa juga menggunakan if dan else dari PHP, seperti contohnya:
<?php
if($row['harga'] < 2000) { echo 'Promo'; } else { echo 'Normal'; }
?>
Tetapi tentu cara di atas kurang efisien dibandignkan dengan menggunakan if di dalam mysql.
Baca Juga: Tips Sukses Learn MySQL Bagi Pemula untuk Menjadi Data Scientist
Apakah bisa menggunakan if dengan kondisi yang lebih bervariasi? Tentu saja bisa.
Anda tinggal membuat variasi pada parameter kondisi dengan perintah SQL lainnya, begitu juga dengan parameter nilai jika benar dan nilai jika salah.
Contohnya:
<?php
$result=$db->doQuery("SELECT nama,IF(nama=? , CONCAT(nama,' - Best Seller'), nama) as newname from product", Array('Product A'));
?>
CONCAT adalah perintah MYSQL untuk menambahkan kata sehingga menjadi satu bagian.
Hasil dari query di atas akan menghasilkan:
nama | newname
Product A | Product A - Best Seller
Product B | Product B
Product C | Product C
Product D | Product D
Product E | Product E
Cukup mudah bukan? Anda tinggal menggunakannya sesuai dengan kebutuhan anda.
Demikian tutorial dari web design surabaya mengenai penggunaan if dan else di dalam PHP dan Mysql.
Selamat mencoba.