- HSQLDB Tutorial
- HSQLDB - Home
- HSQLDB - Introduction
- HSQLDB - Installation
- HSQLDB - Connect
- HSQLDB - Data Types
- HSQLDB - Create Table
- HSQLDB - Drop Table
- HSQLDB - Insert Query
- HSQLDB - Select Query
- HSQLDB - Where Clause
- HSQLDB - Update Query
- HSQLDB - Delete Clause
- HSQLDB - Like Clause
- HSQLDB - Sorting Results
- HSQLDB - Joins
- HSQLDB - Null Values
- HSQLDB - Regular Expressions
- HSQLDB - Transactions
- HSQLDB - Alter Command
- HSQLDB - Indexes
- HSQLDB Useful Resources
- HSQLDB - Quick Guide
- HSQLDB - Useful Resources
- HSQLDB - Discussion
HSQLDB -Where 子句
通常,我们使用SELECT命令从HSQLDB表中获取数据。我们可以使用 WHERE 条件子句来过滤结果数据。使用 WHERE 我们可以指定选择标准以从表中选择所需的记录。
句法
以下是从 HSQLDB 表中获取数据的 SELECT 命令 WHERE 子句的语法。
SELECT field1, field2,...fieldN table_name1, table_name2... [WHERE condition1 [AND [OR]] condition2.....
您可以使用一个或多个以逗号分隔的表来包含使用 WHERE 子句的各种条件,但 WHERE 子句是 SELECT 命令的可选部分。
您可以使用 WHERE 子句指定任何条件。
您可以使用 AND 或 OR 运算符指定多个条件。
WHERE 子句还可以与 DELETE 或 UPDATE SQL 命令一起使用来指定条件。
我们可以通过条件来过滤记录数据。我们在条件 WHERE 子句中使用不同的运算符。以下是可与 WHERE 子句一起使用的运算符列表。
操作员 | 描述 | 例子 |
---|---|---|
= | 检查两个操作数的值是否相等,如果相等则条件成立。 | (A = B) 不正确 |
!= | 检查两个操作数的值是否相等,如果值不相等则条件成立。 | (A != B) 为真 |
> | 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 | (A > B) 不正确 |
< | 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 | (A < B) 为真 |
>= | 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 | (A >= B) 不正确 |
<= | 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件为真。 | (A <= B) 为真 |
例子
下面是一个检索名为“Learn C”的书的详细信息(例如 id、标题和作者)的示例。可以通过在 SELECT 命令中使用 WHERE 子句来实现。以下是相同的查询。
SELECT id, title, author FROM tutorials_tbl WHERE title = 'Learn C';
执行上述查询后,您将收到以下输出。
+------+----------------+-----------------+ | id | title | author | +------+----------------+-----------------+ | 101 | Learn C | Yaswanth | +------+----------------+-----------------+
HSQLDB – JDBC 程序
下面是从标题为Learn C的表tutorials_tbl 中检索记录数据的 JDBC 程序。将以下代码保存到WhereClause.java中。
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class WhereClause { 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 WHERE title = 'Learn C'"); 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 WhereClause.java \>java WhereClause
执行上述命令后,您将收到以下输出。
101 | Learn C | Yaswanth