HSQLDB - sortowanie wyników
Polecenie SQL SELECT pobiera dane z tabeli HSQLDB zawsze, gdy istnieje wymaganie, które jest zgodne z określoną kolejnością podczas pobierania i wyświetlania rekordów. W takim przypadku możemy użyćORDER BY klauzula.
Składnia
Oto składnia polecenia SELECT wraz z klauzulą ORDER BY do sortowania danych z HSQLDB.
SELECT field1, field2,...fieldN table_name1, table_name2...
ORDER BY field1, [field2...] [ASC [DESC]]
Możesz posortować zwrócony wynik według dowolnego pola, pod warunkiem, że to pole jest wymienione.
Możesz sortować wynik według więcej niż jednego pola.
Możesz użyć słowa kluczowego ASC lub DESC, aby uzyskać wynik w porządku rosnącym lub malejącym. Domyślnie jest w porządku rosnącym.
Aby umieścić warunek, możesz użyć klauzuli WHERE ... LIKE w zwykły sposób.
Przykład
Rozważmy przykład, który pobiera i sortuje rekordy tutorials_tbltabeli, porządkując nazwisko autora w kolejności rosnącej. Poniżej znajduje się zapytanie o to samo.
SELECT id, title, author from tutorials_tbl ORDER BY author ASC;
Po wykonaniu powyższego zapytania otrzymasz następujące dane wyjściowe.
+------+----------------+-----------------+
| id | title | author |
+------+----------------+-----------------+
| 102 | Learn MySQL | Abdul S |
| 104 | Learn JDB | Ajith kumar |
| 103 | Learn Excell | Bavya kanna |
| 100 | Learn PHP | John Poul |
| 105 | Learn Junit | Sathya Murthi |
| 101 | Learn C | Yaswanth |
+------+----------------+-----------------+
HSQLDB - program JDBC
Oto program JDBC, który pobiera i sortuje rekordy tutorials_tbltabeli, porządkując nazwisko autora w kolejności rosnącej. Zapisz następujący program wOrderBy.java.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class OrderBy {
public static void main(String[] args) {
Connection con = null;
Statement stmt = null;
ResultSet result = null;
try {
Class.forName("org.hsqldb.jdbc.JDBCDriver");
con = DriverManager.getConnection(
"jdbc:hsqldb:hsql://localhost/testdb", "SA", "");
stmt = con.createStatement();
result = stmt.executeQuery(
"SELECT id, title, author from tutorials_tbl
ORDER BY author ASC");
while(result.next()){
System.out.println(result.getInt("id")+" |
"+result.getString("title")+" |
"+result.getString("author"));
}
} catch (Exception e) {
e.printStackTrace(System.out);
}
}
}
Bazę danych można uruchomić za pomocą następującego polecenia.
\>cd C:\hsqldb-2.3.4\hsqldb
hsqldb>java -classpath lib/hsqldb.jar org.hsqldb.server.Server --database.0
file:hsqldb/demodb --dbname.0 testdb
Skompiluj i uruchom powyższy program, używając następującego polecenia.
\>javac OrderBy.java
\>java OrderBy
Po wykonaniu powyższego polecenia otrzymasz następujące dane wyjściowe.
102 | Learn MySQL | Abdul S
104 | Learn JDB | Ajith kumar
103 | Learn Excell | Bavya Kanna
100 | Learn PHP | John Poul
105 | Learn Junit | Sathya Murthi
101 | C and Data Structures | Yaswanth