pina

mail@pastecode.io avatar
unknown
plain_text
a year ago
1.5 kB
5
Indexable
Never
Jumlah penduduk per jenis kelamin:

SELECT jk.Nama_jenis_kelamin, COUNT(p.Nik) AS jumlah_penduduk
FROM Penduduk p
JOIN Jenis_Kelamin jk ON p.Id_jenis_kelamin = jk.Id_kelamin
GROUP BY jk.Nama_jenis_kelamin;

Penduduk dengan pekerjaan tertentu:
SELECT p.Nama, pek.Nama_pekerjaan
FROM Penduduk p
JOIN Pekerjaan pek ON p.Id_pekerjaan = pek.Id_pekerjaan;

Usia rata-rata penduduk per kecamatan:
SELECT k.Nama_kecamatan, AVG(YEAR(CURRENT_DATE) - YEAR(p.Tanggal_lahir)) AS rata_rata_usia
FROM Penduduk p
JOIN Kecamatan k ON p.Id_kecamatan = k.Id_kecamatan
GROUP BY k.Nama_kecamatan;

Agama mayoritas di suatu tempat:
SELECT p.Tempat_lahir, a.Nama_agama AS agama_mayoritas
FROM Penduduk p
JOIN Agama a ON p.Id_agama = a.Id_agama
WHERE p.Id_agama = (
    SELECT Id_agama
    FROM Penduduk
    WHERE Tempat_lahir = 'Tempat Tertentu'
    GROUP BY Id_agama
    ORDER BY COUNT(Nik) DESC
    LIMIT 1
);

Pendidikan tertinggi yang dimiliki oleh penduduk per kecamatan:
SELECT k.Nama_kecamatan, pd.Nama_pendidikan AS pendidikan_tertinggi
FROM Penduduk p
JOIN Kecamatan k ON p.Id_kecamatan = k.Id_kecamatan
JOIN Pendidikan pd ON p.Id_pendidikan = pd.Id_pendidikan
GROUP BY k.Nama_kecamatan;

Jumlah penduduk per agama:
SELECT a.Nama_agama, COUNT(p.Nik) AS jumlah_penduduk
FROM Agama a
LEFT JOIN Penduduk p ON a.Id_agama = p.Id_agama
GROUP BY a.Nama_agama;

Penduduk dengan usia tertentu:
SELECT Nama, Tanggal_lahir
FROM Penduduk
WHERE YEAR(CURRENT_DATE) - YEAR(Tanggal_lahir) = 30; -- Ubah usia sesuai dengan yang Anda