HSQLDB - 排序結果



只要有在檢索和顯示記錄時遵循特定順序的要求,SQL SELECT 命令就會從 HSQLDB 表中獲取資料。在這種情況下,我們可以使用 **ORDER BY** 子句。

語法

以下是 SELECT 命令的語法,其中包含 ORDER BY 子句以從 HSQLDB 中對資料進行排序。

SELECT field1, field2,...fieldN table_name1, table_name2...
ORDER BY field1, [field2...] [ASC [DESC]]
  • 你可以在列出該欄位的前提下,對返回的結果進行任意欄位排序。

  • 你可以對多個欄位進行結果排序。

  • 你可以使用關鍵字 ASC 或 DESC 以按升序或降序獲得結果。預設情況下,結果按升序排列。

  • 你可以像通常一樣使用 WHERE...LIKE 子句來設定條件。

示例

讓我們考慮一個透過以升序排列作者名稱來獲取和排序 **tutorials_tbl** 表的記錄示例。以下是查詢。

SELECT id, title, author from tutorials_tbl ORDER BY author ASC;

執行上述查詢後,你會收到以下輸出。

+------+----------------+-----------------+
| 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 - JDBC 程式

以下是透過以升序排列作者名稱來獲取和排序 **tutorials_tbl** 表的記錄的 JDBC 程式。將以下程式儲存到 **OrderBy.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:///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);
      }
   }
}

你可以使用以下命令啟動資料庫。

\>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

使用以下命令編譯並執行上述程式。

\>javac OrderBy.java
\>java OrderBy

執行上述命令後,你會收到以下輸出。

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
廣告
© . All rights reserved.