組合條件和布爾運算符
以下的SQL語句中就含有組合條件:
SELECT column1, SUM(column2)
FROM "list-of-tables"
WHERE "condition1" AND "condition2";
AND運算符可以在WHERE子句中連接兩個或者多個條件。AND條件的兩旁必須都為true(真),即兩個條件都同時滿足的時候,這些行才將被顯示。
當然,你也可以使用OR運算符,它也可以在WHERE子句中連接兩個或者多個條件。但是,只要OR運算符兩旁有一個為true的時候條件就滿足了,因此行才會被顯示。所以你使用OR運算符的時候,可以是OR運算符兩旁只有一個為true或者兩旁都為true。
下面舉個例子吧:
SELECT employeeid, firstname, lastname, title, salary
FROM employee_info
WHERE salary >= 50000.00 AND title = 'Programmer';
這條SQL語句是從employee_info表中選擇salary大於等於50000.00並且title等於'Programmer'的列employeeid、 firstname、 lastname、 title和 salary。此時必須AND運算符兩旁的條件都為真,行才會最為檢索結果返回。如果其中有一個條件為假,那麼就什麼都沒有顯示。
你可以使用圓括號將條件括起來,雖然它們也不一定是必須的,但是括起來看起來更清晰一些,這是一個編程習慣的問題。比如 :
SELECT employeeid, firstname, lastname, title, salary
FROM employee_info
WHERE (salary >= 50000.00) AND (title = 'Programmer');
下面再舉個例子:
SELECT firstname, lastname, title, salary
FROM employee_info
WHERE (title = 'Sales') OR (title = 'Programmer');
這條語句將從employee_info表中選擇title等於'Sales'或者等於'Programmer'的列firstname、 lastname, title和 salary。