Mengurutkan data
Fitur pencarian CityBook Libraries sudah bekerja dengan baik, tetapi pengguna ingin mengurutkan hasil berdasarkan tahun terbit dalam urutan naik atau turun. Anda akan membangun kueri secara dinamis untuk menangani kedua arah pengurutan.
Kelas HikariSetup sudah dikonfigurasi untuk Anda.
Latihan ini adalah bagian dari kursus
Melakukan Query ke Basis Data PostgreSQL di Java
Petunjuk latihan
- Lengkapi kueri untuk mengurutkan hasil berdasarkan
publication_year. - Perluas kueri agar dapat mengurutkan secara menaik atau menurun sesuai dengan variabel
ascendingyang mewakili masukan pengguna.
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();
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"));
}
}
}
}
}