Sqlite-where-clause
SQLite-WHERE句
SQLiteの WHERE 句を使用して、1つまたは複数のテーブルからデータをフェッチするときに条件を指定します。
指定された条件が満たされた場合、trueを意味し、テーブルから特定の値を返します。 WHERE句を使用してレコードをフィルタリングし、必要なレコードのみを取得する必要があります。
WHERE句はSELECTステートメントで使用されるだけでなく、UPDATE、DELETEステートメントなどでも使用されます。これについては、以降の章で説明します。
構文
WHERE句を使用したSQLite SELECTステートメントの基本的な構文は次のとおりです。
例
link:/sqlite/sqlite_operators [比較演算子または論理演算子]を使用して、>、<、=、LIKE、NOTなどの条件を指定できます。 次のレコードを持つCOMPANYテーブルを検討してください-
以下は、SQLite論理演算子の使用法を示す簡単な例です。 次のSELECTステートメントは、AGEが25以上、給与が65000.00以上のすべてのレコードをリストします。
次のSELECTステートメントは、AGEが25以上、または給与が65000.00以上のすべてのレコードをリストします。
SELECTステートメントに続くと、AGEがNULLでないすべてのレコードがリストされます。これは、どのレコードもAGEがNULLでないため、すべてのレコードを意味します。
次のSELECTステートメントは、NAMEが「Ki」で始まるすべてのレコードをリストしますが、「Ki」の後に何があっても問題ありません。
次のSELECTステートメントは、NAMEが「Ki」で始まるすべてのレコードをリストしますが、「Ki」の後に何があっても問題ありません。
次のSELECTステートメントは、AGE値が25または27であるすべてのレコードをリストします。
次のSELECTステートメントは、AGE値が25でも27でもないすべてのレコードをリストします。
次のSELECTステートメントは、AGE値が25と27の間にあるすべてのレコードをリストします。
次のSELECTステートメントはSQLサブクエリを使用します。サブクエリは、SALARY> 65000以降のWHERE句を持つすべてのレコードを検索し、外部クエリからのAGEが存在するすべてのレコードをリストするためにEXISTS演算子とともに使用されます。サブクエリによって返された結果で-
次のSELECTステートメントはSQLサブクエリを使用します。サブクエリは、SALARY> 65000以降のWHERE句を含むすべてのレコードを検索し、>演算子とともに>演算子を使用して、外部クエリからのAGEが大きいすべてのレコードをリストしますサブクエリによって返される結果の年齢よりも。