Salah satu query MySQL yang sering kali dibutuhkan ialah bagaimana menghitung dan menampilkan umur seseorang berdasarkan data yang ada. Asumsikan kita memiliki data user
yang memiliki 2 field yaitu nama
dan tanggal_lahir
seperti berikut :
Lantas bagaimana cara menghitung umur setiap user
diatas ? Cukup mudah. Kita dapat menggunakan beberapa fungsi MySQL untuk menghitung umur setiap user. Berikut beberapa perintah MySQL untuk menghitung umur.
Menggunakan Fungsi YEAR
Fungsi YEAR
di MySQL digunakan untuk mengambil data tahun dari sebuah field. Menggunakan fungsi ini kita dapat menghitung umur dengan melakukan pengurangan selisih antara tahun sekarang dan tahun tanggal_lahir
. Berikut contoh querynya :
SELECT *, (YEAR(CURDATE()) - YEAR(tanggal_lahir)) AS umur FROM user
Menggunakan Fungsi TIMESTAMPDIFF
Fungsi TIMESTAMPDIFF()
digunakan untuk menghitung selisih antara dua waktu. Dalam kasus ini selisih antara tanggal_lahir
dan tanggal sekarang. Berikut contoh querynya :
SELECT *, TIMESTAMPDIFF(YEAR, tanggal_lahir, CURDATE()) AS umur FROM user
Query diatas akan menampilkan selisih antara waktu sekarang dan field tanggal_lahir
dalam satuan tahun. Dikarenakan pada query diatas kita menggunakan unit interval YEAR
. Kamu dapat menggunakan unit yang berbeda sesuai kebutuhan.
Adapun parameter unit yang dapat digunakan pada fungsi TIMESTAMPDIFF
ialah DAY
, WEEK
, MONTH
, QUARTER
, YEAR
, HOUR
, MINUTE
, SECOND
, MICROSECOND
.
Bila kamu ingin menampilkan umur dalam tahun atau bulan bisa menggunakan contoh query berikut :
SELECT *, TIMESTAMPDIFF(YEAR, tanggal_lahir, CURDATE()) AS umur_tahun,
TIMESTAMPDIFF(MONTH, tanggal_lahir, CURDATE()) AS umur_bulan
FROM user
Kamu juga dapat menampilkan umur dalam tahun dan sisa bulan menggunakan query seperti berikut :
SELECT *, TIMESTAMPDIFF(YEAR, tanggal_lahir, CURDATE()) AS umur_tahun,
TIMESTAMPDIFF(MONTH, tanggal_lahir, CURDATE()) % 12 AS umur_bulan
FROM user
Kesimpulan
Demikian beberapa contoh perintah MySQL yang dapat kamu gunakan untuk menghitung umur. Semoga bermanfaat.