Сортування даних
Пошук у CityBook Libraries працює добре, але користувачі хочуть сортувати результати за роком публікації — як за зростанням, так і за спаданням. Ви динамічно сформуєте запит, щоб підтримати обидва напрямки сортування.
Клас HikariSetup уже налаштовано для вас.
Ця вправа є частиною курсу
Запити до бази даних PostgreSQL у Java
Інструкції до вправи
- Доповніть запит, щоб відсортувати результат за
publication_year. - Розширте запит, щоб сортувати за зростанням або за спаданням залежно від змінної
ascending, яка відображає введення користувача.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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"));
}
}
}
}
}