📅  最后修改于: 2020-11-27 05:06:08             🧑  作者: Mango
通常,我们使用SELECT命令从HSQLDB表中获取数据。我们可以使用WHERE条件子句来过滤结果数据。使用WHERE,我们可以指定选择标准以从表中选择所需的记录。
以下是SELECT命令WHERE子句从HSQLDB表中获取数据的语法。
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子句一起使用。
Operator | Description | Example |
---|---|---|
= | Checks if the values of two operands are equal or not, if yes then the condition becomes true. | (A = B) is not true |
!= | Checks if the values of two operands are equal or not, if values are not equal then the condition becomes true. | (A != B) is true |
> | Checks if the value of the left operand is greater than the value of the right operand, if yes then the condition becomes true. | (A > B) is not true |
< | Checks if the value of the left operand is less than the value of the right operand, if yes then the condition becomes true. | (A < B) is true |
>= | Checks if the value of the left operand is greater than or equal to the value of the right operand, if yes then the condition becomes true. | (A >= B) is not true |
<= | Checks if the value of the left operand is less than or equal to the value of the right operand, if yes then the condition becomes true. | (A <= B) is true |
这是一个示例,可检索ID,书名和名为“ Learn C”的书的作者等详细信息。通过在SELECT命令中使用WHERE子句是可能的。以下是相同的查询。
SELECT id, title, author FROM tutorials_tbl WHERE title = 'Learn C';
执行上述查询后,您将收到以下输出。
+------+----------------+-----------------+
| id | title | author |
+------+----------------+-----------------+
| 101 | Learn C | Yaswanth |
+------+----------------+-----------------+
这是JDBC程序,该程序从表tutorials_tbl中检索记录数据,标题为Learn C。将以下代码保存到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