MulaiMulai sekarang secara gratis

Meringkas data

Anda adalah pengembang untuk Metropolitan Public Library. Kepala pustakawan meminta fitur baru pada katalog daring: menampilkan statistik penilaian untuk setiap buku agar pengunjung dapat membuat pilihan bacaan yang lebih tepat. Saat ini, sistem menyimpan ulasan individual pada tabel book_reviews; namun, belum ada cara untuk melihat total jumlah ulasan yang diterima sebuah buku atau nilai rata-ratanya.

Tugas Anda adalah menulis kueri yang merangkum data ulasan dengan menghitung total jumlah ulasan dan nilai rata-rata untuk setiap buku.

Latihan ini adalah bagian dari kursus

Melakukan Query ke Basis Data PostgreSQL di Java

Lihat Kursus

Petunjuk latihan

  • Lengkapi kueri untuk menghitung jumlah ulasan dan menghitung nilai rata-rata.
  • Kelompokkan hasil berdasarkan book_id untuk mendapatkan statistik setiap buku.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

public class Main {
    public static void main(String[] args) throws SQLException {
        HikariDataSource ds = HikariSetup.createDataSource();
        String query = """
            --  Count the number of reviews and the average rating
            SELECT book_id, ____(*), ____(rating)
            FROM book_reviews
            -- Group reviews by book_id
            ____ ____ ____;
            """;

        try (Connection conn = ds.getConnection();
             PreparedStatement pstmt = conn.prepareStatement(query);
             ResultSet rs = pstmt.executeQuery()) {
            while (rs.next()) {
                System.out.printf("ID: %d, Count: %d, Average: %.0f%n",
                        rs.getInt("book_id"), rs.getInt("count"), rs.getDouble("avg"));
            }
        }
    }
}
Edit dan Jalankan Kode