SQLite AND/OR 運算符
SQLite 的 AND 和 OR 運算子用於編譯多個條件來縮小在 SQLite 語句中所選的資料。這兩個運算子被稱為連接運算子。
這些運算子為同一個 SQLite 語句中不同的運算子之間的多個比較提供了可能。
AND 運算子
AND 運算子允許在一個 SQL 語句的 WHERE 子句中的多個條件的存在。使用 AND 運算子時,只有當所有條件都為真(true)時,整個條件為真(true)。例如,只有當 condition1 和 condition2 都為真(true)時,[condition1] AND [condition2] 為真(true)。
語法
有WHERE 子句的AND 運算子的基本語法如下:
SELECT column1, column2, columnN
#FROM table_name
WHERE [condition1] AND [condition2]...AND [conditionN];
#FROM table_name
WHERE [condition1] AND [condition2]...AND [conditionN];
您可以使用 AND 運算子來結合 N 個數量的條件。 SQLite 語句需要執行的動作是,無論是交易或查詢,所有由 AND 分隔的條件都必須為真(TRUE)。
實例
假設COMPANY 表有以下記錄:
ID NAME ------- ---------- ---------- ----------
1 Paul 32 Allen 25 Texas 15000.0
3 Teddy 23 Norway 20000.0
4 Mark 25 Rich-Mond 65000.0
5 David 27 Texas 85000.0
6 Kim 22 South-Hall 45000.0
7 James 24 Houston 10000.0
OR
1 Paul 32 Allen 25 Texas 15000.0
3 Teddy 23 Norway 20000.0
4 Mark 25 Rich-Mond 65000.0
5 David 27 Texas 85000.0
6 Kim 22 South-Hall 45000.0
7 James 24 Houston 10000.0
下面的SELECT 語句列出了AGE 大於等於25 且工資大於等於65000.00 的所有記錄:
sqlite> SELECT * FROM COMPANY WHERE AGE SELECT * FROM COMPANY WHERE AGE > AND SALARY >= 65000;
ID NAME AGE -------- ----------
4 Mark 25 27 Texas 85000.0
#OR 運算子ID NAME AGE -------- ----------
4 Mark 25 27 Texas 85000.0
運算子也用來結合一個SQL 語句的WHERE 子句中的多個條件。使用 OR 運算子時,只要當條件中任何一個為真(true)時,整個條件為真(true)。例如,只要當 condition1 或 condition2 有一個為真(true)時,[condition1] OR [condition2] 為真(true)。 語法
有WHERE 子句的OR 運算子的基本語法如下:
SELECT column1, column2, columnN#FROM table_name
WHERE [condition1] OR [condition2]...OR [conditionN]
您可以使用 OR 運算子來結合 N 個數量的條件。 SQLite 語句需要執行的動作是,無論是交易或查詢,只要任何一個由 OR 分隔的條件為真(TRUE)即可。
實例
假設COMPANY 表有以下記錄:
ID NAME ------- ---------- ---------- ----------
1 Paul 32 Allen 25 Texas 15000.0
3 Teddy 23 Norway 20000.0
4 Mark 25 Rich-Mond 65000.0
5 David 27 Texas 85000.0
6 Kim 22 South-Hall 45000.0
7 James 24 Houston 10000.0
#1 Paul 32 Allen 25 Texas 15000.0
3 Teddy 23 Norway 20000.0
4 Mark 25 Rich-Mond 65000.0
5 David 27 Texas 85000.0
6 Kim 22 South-Hall 45000.0
7 James 24 Houston 10000.0
下面的SELECT 語句列出了AGE 大於等於25 或工資大於等於65000.00 的所有記錄:
sqlite> SELECT * FROM COMPANY WHERE AGE SELECT * FROM COMPANY WHERE AGE > OR SALARY >= 65000;
ID NAME AGE -------- ----------
1 Paul 32 California 20000.0
2 Allen 25 Texas 15000.0
4 Mark 25 Rich-Mond 65000.0
5 David 27 Texas 85000.0
ID NAME AGE -------- ----------
1 Paul 32 California 20000.0
2 Allen 25 Texas 15000.0
4 Mark 25 Rich-Mond 65000.0
5 David 27 Texas 85000.0