Sortarea datelor
Funcția de căutare a bibliotecilor CityBook funcționează bine, dar utilizatorii vor să sorteze rezultatele după anul publicării, fie în ordine crescătoare, fie descrescătoare. Vei construi interogarea dinamic pentru a gestiona ambele direcții de sortare.
Clasa HikariSetup este deja configurată pentru tine.
Acest exercițiu face parte din cursul
Interogarea unei baze de date PostgreSQL în Java
Instrucțiuni pentru exercițiu
- Completează interogarea pentru a sorta rezultatele după
publication_year. - Extinde interogarea pentru a sorta în ordine crescătoare sau descrescătoare, în funcție de variabila
ascending, care reprezintă opțiunea aleasă de utilizator.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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"));
}
}
}
}
}