📜  HSQLDB-Where子句

📅  最后修改于: 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      |
+------+----------------+-----------------+

HSQLDB – JDBC程序

这是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