操作符是一個保留字或字符,主要用於SQL語句的WHERE子句來執行操作,比如比較和算術運算。操作符用於在SQL語句裏指定條件,還可以連接一個語句裏的多個條件。
主要有:
比較操作符
邏輯操作符
求反操作符
算術操作符
1.比較操作符
包括 =、<>、< 和 >,用於測試相等,不相等,小於,大於。
組合形式:<= 、>=。
2.邏輯操作符
用於對SQL關鍵字進行比較,包括 IS NULL、BETWEEN、IN、LIKE、EXISTS、UNIQUE、ALL和ANY.
#找到沒有薪水的人
WHERE SALARY IS NULL;
#找到薪水在20000與30000之間的,包含20000和30000
WHERE SALARY BETWEEN “20000” AND “30000”;
IN用於把一個值與一個指定列表進行比較,當被比較的值至少與列表中的一個值相匹配時,它會返回TRUE。
WHERE SALARY IN (“20000”, “30000”, “40000”);LIKE利用通配符把一個值與類似的值進行比較
通配符有兩個:百分號(%); 下劃線(_)。
百分號代表零個、一個或多個字符,下劃線代表一個數字或字符,這些符號可以符合使用。
WHERE SALARY LIKE “200%”; #以200開頭的值
WHERE SALARY LIKE “_00%”; #匹配第二和第三個字符是0的值
WHERE SALARY LIKE “_2%3”; # 匹配第二個位置是2,結尾爲3的值
WHERE PRO_DESC LIKE “%S”;匹配產品描述以大寫S結尾的記錄
EXIST 用於搜索指定表裏是否存在滿足特定條件的記錄
SELECT COST
FROM PRODUCTS_TBL
WHERE EXISTS (SELECT COST
FROM PRODUCTS_TBL
WHERE cost < 100);
ALL用於把一個值與另一個集合裏的全部值進行比較;
SELECT COST
FROM PRODUCTS_TBL
WHERE COST > ALL (SELECT COST
FROM PRODUCTS_TBL
WHERE COST < 100);
最終的COST值都要>=100.
ANY用於把一個值與另一個集合裏的任意值比較;
SELECT COST
FROM PRODUCTS_TBL
WHERE COST > ANY (SELECT COST
FROM PRODUCTS_TBL
WHERE COST < 100);
只要有比子查詢裏面的任意一個值大,就進行輸出。
# SOME是ANY的別名,可以互換使用。
3.連接操作符
包括AND和OR;
AND可以在一條SQL語句的WHERE子句裏使用多個條件,AND連接的條件都必須爲TRUE,SQL纔會實際執行。
操作符OR可以在SQL語句的WHERE子句裏連接多個條件,只要有至少一個是TRUE,SQL語句就會執行。
4.求反操作符
<>,!=
NOT BETWEEN(BETWEEN包含邊界值,所以NOT BETWEEN就不包含邊界值)
NOT IN
NOT LIKE
IS NOT NULL
NOT EXISTS
NOT UNIQUE
5.算術操作符
+、—、*、/;
注意優先級和圓括號的使用。