Query Menampilkan Data Terbanyak Dari Sebuah Tabel

Sesuai dengan judul diatas pastinya sudah tahu semua maksudnya. Di sini saya hanya akan sharing bagaimana menampilkan data terbanyak dari sebuah tabel dengan menggunakan query. Sekedar info aja soal ini saya temui pada saat saya interview pada sebuah perusahaan di Jakarta, mungkin ini bisa berguna juga bagi teman-teman yang lain.

OK, Langsung aja ya.., Misalkan kita mempunyai tabel kota sebagai beriikut :

Image

Dari tabel di atas misalkan kita akan menampilkan NamaKota yang paling banyak maka dapat digunakan qurey sebagai berikut :

SELECT NamaKota, Total FROM
(SELECT TOP 1 COUNT(NamaKota) AS Total, NamaKota
FROM kota
GROUP BY namakota
ORDER BY Total DESC) AS A;

Dari query di atas akan didapat hasil :

Image-5

Nah jika kita akan menampilkan NamaKota dan NamaPropinsi yang paling banyak maka dapat digunakan query :

SELECT * FROM Kota
WHERE NamaKota =
(
SELECT NamaKota FROM
(SELECT TOP 1 COUNT(NamaKota) AS banyak_kota, NamaKota
FROM Kota
GROUP BY NamaKota
ORDER BY banyak_kota DESC) AS A
)
AND NamaPropinsi IN
(
SELECT NamaPropinsi FROM
(SELECT TOP 1 COUNT(NamaPropinsi) AS banyak_propinsi, NamaPropinsi
FROM Kota
GROUP BY NamaPropinsi
ORDER BY banyak_propinsi DESC) AS B
);

Hasil dari query diatas adalah :

Image

 

Selamat Mencoba…

2 Responses to “Query Menampilkan Data Terbanyak Dari Sebuah Tabel”

  1. Iyan Alfiyansyah Says:

    Thanks…

  2. Sebastian Mandai Says:

    maaf ni….
    query diatas ketika saya mencobanya di mysql….
    “TOP 1” pda bagian ini terjadi error….

    apa ada solusi yang laen?


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: