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