BaşlayınÜcretsiz başlayın

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, kursun bir parçasıdır

Java ile PostgreSQL Veritabanına Sorgu Yazma

Kursa Göz Atın

Egzersiz talimatları

  • Sonucu publication_year değerine göre sıralayacak şekilde sorguyu tamamla.
  • Kullanıcı girdisini temsil eden ascending değişkenine bağlı olarak artan ya da azalan sırada sıralayacak şekilde sorguyu genişlet.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

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"));
                }
            }
        }
    }
}
Kodu Düzenle ve Çalıştır