डेटा का सारांश
आप मेट्रोपॉलिटन पब्लिक लाइब्रेरी के डेवलपर हैं। मुख्य लाइब्रेरियन ने ऑनलाइन कैटलॉग के लिए एक नया फीचर माँगा है: प्रत्येक पुस्तक की रेटिंग से जुड़ा आँकड़ा दिखाना ताकि पाठक बेहतर निर्णय ले सकें। फिलहाल, सिस्टम व्यक्तिगत रिव्यू को book_reviews टेबल में स्टोर करता है; लेकिन किसी पुस्तक को मिले कुल रिव्यू की संख्या या उसकी औसत रेटिंग देखने का तरीका नहीं है।
आपका कार्य एक ऐसी क्वेरी लिखना है जो रिव्यू डेटा का सारांश बनाए — यानी प्रत्येक पुस्तक के लिए कुल रिव्यू की संख्या और औसत रेटिंग की गणना करे।
यह अभ्यास पाठ्यक्रम का हिस्सा है
Java में PostgreSQL डेटाबेस को क्वेरी करना
अभ्यास निर्देश
- क्वेरी पूरी करें ताकि रिव्यू की संख्या गिनी जाए और औसत रेटिंग निकले.
- प्रत्येक पुस्तक के आँकड़े पाने के लिए परिणामों को
book_idके आधार पर समूहित करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
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"));
}
}
}
}