程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQL循序漸進(15)IN 和 BETWEEN 條件運算符

SQL循序漸進(15)IN 和 BETWEEN 條件運算符

編輯:關於SqlServer

IN 和 BETWEEN 條件運算符

下面是IN條件運算符的SQL語句:

SELECT column1, SUM(column2)

FROM "list-of-tables"

WHERE column3 IN (list-of-values);

下面是BETWEEN條件運算符的SQL語句:

SELECT column1, SUM(column2)

FROM "list-of-tables"

WHERE column3 BETWEEN value1 AND value2;

實際上,IN條件運算符是一個設置成員測試運算符,也就是說,它用於測試是否一個數值處在IN關鍵字之後提供的數值之中。舉個例子如下:

SELECT employeeid, lastname, salary

FROM employee_info

WHERE lastname IN ('Hernandez', 'Jones', 'Roberts', 'Ruiz');

這條語句是從employee_info表中選擇lastname等於Hernandez、Jones、 Roberts或者 Ruiz名字之一的列employeeid、 lastname和 salary。如果它在其中就將返回行。

IN條件運算符可以使用混合條件來替代,比如你可以使用等號運算符或者使用OR運算符等等,但是結果是一樣的,例如:

SELECT employeeid, lastname, salary

FROM employee_info

WHERE lastname = 'Hernandez' OR lastname = 'Jones' OR lastname = 'Roberts' OR lastname = 'Ruiz';

你可以觀察到,利用IN運算符時語句會更加簡短並且容易讀,特別是在你測試兩個或者三個數值以上的時候尤為突出。

當然你也可以使用NOT IN 來在你的列表中排除行的。


而BETWEEN條件運算符是用與測試一個數值是否處在BETWEEN關鍵字兩邊指定數值的中間,比如:

SELECT employeeid, age, lastname, salary

FROM employee_info

WHERE age BETWEEN 30 AND 40;

這條SQL語句是從employee_info表中選擇age處於30到40歲之間(包括30歲和40歲)的列employeeid、age、 lastname和salary。

這條語句同樣可以不用BETWEEN運算符,而使用混合條件來替代,例如:

SELECT employeeid, age, lastname, salary

FROM employee_info

WHERE age >= 30 AND age <= 40;

當然,你也可以類似於NOT IN的方法,使用NOT BETWEEN來排除一些數據。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved