HSQLDB - โดยที่ข้อ

โดยทั่วไปเราใช้คำสั่ง SELECT เพื่อดึงข้อมูลจากตาราง HSQLDB เราสามารถใช้ WHERE conditional clause เพื่อกรองข้อมูลผลลัพธ์ การใช้ WHERE เราสามารถระบุเกณฑ์การเลือกเพื่อเลือกระเบียนที่ต้องการจากตาราง

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์ของคำสั่ง SELECT WHERE clause เพื่อดึงข้อมูลจากตาราง 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 clause นี่คือรายชื่อตัวดำเนินการซึ่งสามารถใช้กับ WHERE clause

ตัวดำเนินการ คำอธิบาย ตัวอย่าง
= ตรวจสอบว่าค่าของตัวถูกดำเนินการสองค่าเท่ากันหรือไม่ถ้าใช่เงื่อนไขจะกลายเป็นจริง (A = B) ไม่เป็นความจริง
! = ตรวจสอบว่าค่าของตัวถูกดำเนินการสองค่าเท่ากันหรือไม่หากค่าไม่เท่ากันเงื่อนไขจะกลายเป็นจริง (A! = B) เป็นจริง
> ตรวจสอบว่าค่าของตัวถูกดำเนินการด้านซ้ายมากกว่าค่าของตัวถูกดำเนินการด้านขวาหรือไม่ถ้าใช่เงื่อนไขจะกลายเป็นจริง (A> B) ไม่เป็นความจริง
< ตรวจสอบว่าค่าของตัวถูกดำเนินการด้านซ้ายน้อยกว่าค่าของตัวถูกดำเนินการด้านขวาหรือไม่ถ้าใช่เงื่อนไขจะกลายเป็นจริง (A <B) เป็นจริง
> = ตรวจสอบว่าค่าของตัวถูกดำเนินการด้านซ้ายมากกว่าหรือเท่ากับค่าของตัวถูกดำเนินการด้านขวาหรือไม่ถ้าใช่เงื่อนไขจะกลายเป็นจริง (A> = B) ไม่เป็นความจริง
<= ตรวจสอบว่าค่าของตัวถูกดำเนินการด้านซ้ายน้อยกว่าหรือเท่ากับค่าของตัวถูกดำเนินการด้านขวาหรือไม่ถ้าใช่เงื่อนไขจะกลายเป็นจริง (A <= B) เป็นจริง

ตัวอย่าง

นี่คือตัวอย่างที่ดึงข้อมูลรายละเอียดเช่น id ชื่อเรื่องและผู้แต่งหนังสือชื่อ "Learn C" เป็นไปได้โดยใช้ WHERE clause ในคำสั่ง SELECT ต่อไปนี้เป็นแบบสอบถามเดียวกัน

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

หลังจากดำเนินการค้นหาข้างต้นคุณจะได้รับผลลัพธ์ต่อไปนี้

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

HSQLDB - โปรแกรม JDBC

นี่คือโปรแกรม JDBC ที่ดึงข้อมูลเร็กคอร์ดจากตาราง tutorials_tblhaving the title 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