HSQLDB – 排序结果
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 程序
下面是一个 JDBC 程序,它通过按作者姓名的升序对tutorials_tbl表的记录进行提取和排序。将以下程序保存到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://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); } } }
您可以使用以下命令启动数据库。
\>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