HSQLDB-Where句

通常、SELECTコマンドを使用してHSQLDBテーブルからデータをフェッチします。WHERE条件節を使用して、結果のデータをフィルタリングできます。WHEREを使用すると、選択基準を指定して、テーブルから必要なレコードを選択できます。

構文

以下は、HSQLDBテーブルからデータをフェッチするためのSELECTコマンドWHERE句の構文です。

SELECT field1, field2,...fieldN table_name1, table_name2...
[WHERE condition1 [AND [OR]] condition2.....
  • カンマで区切られた1つ以上のテーブルを使用して、WHERE句を使用してさまざまな条件を含めることができますが、WHERE句はSELECTコマンドのオプション部分です。

  • WHERE句を使用して任意の条件を指定できます。

  • ANDまたはOR演算子を使用して、複数の条件を指定できます。

  • WHERE句をDELETEまたはUPDATESQLコマンドと一緒に使用して、条件を指定することもできます。

条件を使用してレコードデータをフィルタリングできます。条件付きWHERE句でさまざまな演算子を使用しています。WHERE句で使用できる演算子のリストを次に示します。

オペレーター 説明
= 2つのオペランドの値が等しいかどうかをチェックし、等しい場合は条件が真になります。 (A = B)は真ではありません
!= 2つのオペランドの値が等しいかどうかをチェックし、値が等しくない場合は条件が真になります。 (A!= B)は真です
>> 左側のオペランドの値が右側のオペランドの値より大きいかどうかを確認します。大きい場合は、条件が真になります。 (A> B)は正しくありません
< 左側のオペランドの値が右側のオペランドの値よりも小さいかどうかを確認します。小さい場合は、条件が真になります。 (A <B)は真です
> = 左のオペランドの値が右のオペランドの値以上であるかどうかをチェックし、そうである場合は条件が真になります。 (A> = B)は真ではありません
<= 左のオペランドの値が右のオペランドの値以下であるかどうかをチェックし、そうである場合は条件が真になります。 (A <= B)は真です

これは、id、title、「LearnC」というタイトルの本の著者などの詳細を取得する例です。SELECTコマンドでWHERE句を使用することで可能です。以下は同じもののクエリです。

SELECT id, title, author FROM tutorials_tbl WHERE title = 'Learn C';

上記のクエリを実行すると、次の出力が表示されます。

+------+----------------+-----------------+
| id   |      title     |    author       |
+------+----------------+-----------------+
| 101  |      Learn C   |   Yaswanth      |
+------+----------------+-----------------+

HSQLDB –JDBCプログラム

これは、タイトルを持つtutorials_tblテーブルからレコードデータを取得するJDBCプログラムです。 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