Verileri sıralama
CityBook Libraries'in arama özelliği iyi çalışıyor, ancak kullanıcılar sonuçları yayın yılına göre artan ya da azalan sırada sıralamak istiyor. Her iki sıralama yönünü de desteklemek için sorguyu dinamik olarak oluşturacaksın.
HikariSetup sınıfı senin için zaten yapılandırıldı.
Bu egzersiz
Java ile PostgreSQL Veritabanına Sorgu Yazma
kursunun bir parçasıdırEgzersiz talimatları
- Sonucu
publication_yeardeğerine göre sıralayacak şekilde sorguyu tamamla. - Kullanıcı girdisini temsil eden
ascendingdeğişkenine bağlı olarak artan ya da azalan sırada sıralayacak şekilde sorguyu genişlet.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
public class Main {
public static void main(String[] args) throws SQLException {
HikariDataSource ds = HikariSetup.createDataSource();
boolean ascending = true;
// Order by the publication_year in ascending order
String query = """
SELECT *
FROM books
WHERE publication_year >= ?
AND status = 'available'
____ ____ ____
""";
// Sort depending on the ascending parameter
query += ____ ? "____" : "____";
try (Connection conn = ds.getConnection();
PreparedStatement pstmt = conn.prepareStatement(query)) {
pstmt.setInt(1, 2000);
try (ResultSet rs = pstmt.executeQuery()) {
while (rs.next()) {
System.out.printf("ID: %d, Title: %s (%d)%n", rs.getInt("book_id"), rs.getString("title"), rs.getInt("publication_year"));
}
}
}
}
}