mySQL Group By

Katakan kita ada set of data seperti di bawah:

id username name
-------------------------
1 ahmad   Ahmad Fuad
2 bakri   Mohd Bakri
3 zul     Zulkifli
4 ahmad   Ahmad Fuad

dan kita hendak paparkan senarai user menggunakan fungsi GROUP BY

$sa = "SELECT * FROM table
WHERE id IN (
SELECT MAX(id) FROM table
GROUP BY username
)
ORDER BY name ASC
";

Bagi pengguna mysql, kod di atas akan memaparkan senarai pengguna tanpa duplicate username melalui penggunaan fungsi GROUP BY serta baris yang terakhir untuk data berkenaan. Bagi kes ini, id pengguna bernama Ahmad Fuad adalah 4. Fungsi subquery adalah untuk mendapatkan id terakhir (menggunakan fungsi MAX) setelah username di group by.

Comments

Published by

PakCu

I'm a simple person