[ Text ]

MySQL Cara Cek Jika Data Ditemukan

Untuk mengetahui apakah records sudah ada atau belum di tabel MySQL, umumnya kita melakukan `SELECT` kemudian menghitung `num_rows` atau jumlah baris jika > 0. Cara tersebut secara logis dapat diterima, tetapi alangkah baiknya digunakan saat kita ingin sekaligus mengambil data.

1. Menghitung jumlah data

  1. SELECT COUNT(*) FROM table WHERE id = x; 

SQL Query diatas menggunakan fungsi `COUNT()` untuk menghitung data dengan id = x, tetapi tidak mengambil data melainkan mengambil jumlah hitungan. Maka cara ini lebih baik jika kita tidak ingin mengambil data, tetapi hanya sekedar melakukan checking.

2. Menggunakan constant 1 (TRUE)

  1. SELECT 1 FROM table WHERE id = x; 

Kita bisa memanfaatkan constant 1 atau TRUE dari MySQL Boolean Literals. Ketika data dengan id = x ada, maka 1 bisa kita gunakan sebagai TRUE, dan NULL atau saat hasil select tidak ditemukan (kosong) sebagai FALSE. Untuk performa yang lebih baik gunakan cara ini. Terutama jika mempunyai data yang sangat banyak. Jangan lupa tambahkan LIMIT 1 jika kemungkinan hasil select akan lebih dari satu.

Artikel ini adalah tulisan ulang (update), saya pernah nulis ini di http://blog.anggit.com/2/blog/post/119/mysql-check-data.html.