SQL中 and or in的用法小結(jié)
1 .SQL IN 運算符
IN運算符允許您在WHERE子句中指定多個值。
IN運算符是多個OR條件的簡寫。
SELECT "欄位名"
FROM "表格名"
WHERE "欄位名" IN('值一', '值二', ...)假設(shè)我們有兩個表格:
tb_Teachers_info

tb_City_info

然而我們要在tb_Teachers_info中找出所有來自American的教師姓名
SQL語句: select TeachersName from tb_Teachers_info whereCity in('American');結(jié)果:

如果我們要從tb_Teachers_info中找出與tb_City_info中同名教師的TeachersId
SQL 語句: select TeachersId from tb_Teachers_info whereTeachersName in(selectTeachersName from tb_City_info);
結(jié)果:

2.SQL BETWEEN 運算符
BETWEEN運算符選擇給定范圍內(nèi)的值。值可以是數(shù)字,文本或日期。
BETWEEN運算符是包含性的:包括開始和結(jié)束值。
SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2;
演示數(shù)據(jù)庫
在本教程中,我們將使用著名的Northwind示例數(shù)據(jù)庫。
以下是"Products"表中的數(shù)據(jù):
| ProductID | ProductName | SupplierID | CategoryID | Unit | Price |
|---|---|---|---|---|---|
| 1 | Chais | 1 | 1 | 10 boxes x 20 bags | 18 |
| 2 | Chang | 1 | 1 | 24 - 12 oz bottles | 19 |
| 3 | Aniseed Syrup | 1 | 2 | 12 - 550 ml bottles | 10 |
| 4 | Chef Anton's Cajun Seasoning | 1 | 2 | 48 - 6 oz jars | 22 |
| 5 | Chef Anton's Gumbo Mix | 1 | 2 | 36 boxes | 21.35 |
BETWEEN 運算符實例
以下SQL語句選擇價格在10到20之間的所有產(chǎn)品:
SELECT * FROM Products WHERE Price BETWEEN 10 AND 20;
NOT BETWEEN 操作符實例
要顯示前面示例范圍之外的產(chǎn)品,請使用NOT BETWEEN:
實例 SELECT * FROM Products WHERE Price NOT BETWEEN 10 AND 20;
帶有 IN 的 BETWEEN 操作符實例
以下SQL語句選擇價格在10到20之間但CategoryID不是1、2或3的所有產(chǎn)品:
實例 SELECT * FROM Products WHERE (Price BETWEEN 10 AND 20) AND NOT CategoryID IN (1,2,3);
帶有文本值的 BETWEEN 操作符實例
以下SQL語句選擇所有帶有ProductName BETWEEN'Carnarvon Tigers'和'Mozzarella di Giovanni'的產(chǎn)品:
實例 SELECT * FROM Products WHERE ProductName BETWEEN 'Carnarvon Tigers' AND 'Mozzarella di Giovanni' ORDER BY ProductName;
帶有文本值的 NOT BETWEEN 操作符實例
以下SQL語句選擇ProductName不是BETWEEN'Carnarvon Tigers'和'Mozzarella di Giovanni'的所有產(chǎn)品:
實例 SELECT * FROM Products WHERE ProductName NOT BETWEEN 'Carnarvon Tigers' AND 'Mozzarella di Giovanni' ORDER BY ProductName;
示例表
下面是選自 "Orders" 表的數(shù)據(jù):
OrderIDCustomerIDEmployeeIDOrderDateShipperID102489057/4/19963102498167/5/19961102503447/8/19962102518437/9/19961102527647/10/19962
帶有日期值的 BETWEEN 操作符實例
以下 SQL 語句選取 OrderDate 介于 '04-July-1996' 和 '09-July-1996' 之間的所有訂單:
實例 SELECT * FROM Orders WHERE OrderDate BETWEEN #07/04/1996# AND #07/09/1996#;
SQL OR 運算符
WHERE子句可以與OR運算符結(jié)合使用。
OR運算符用于根據(jù)多個條件篩選記錄:
如果由OR分隔的任何條件為真,則OR運算符顯示記錄。
OR語法 SELECT column1, column2, ...FROM table_nameWHERE condition1 OR condition2 OR condition3 ...;
OR 運算符實例
以下SQL語句選擇城市為“Berlin”或“München”的“Customers”的所有字段:
實例 SELECT * FROM Customers WHERE City='Berlin' OR City='München';
到此這篇關(guān)于SQL中 and or in的用法的文章就介紹到這了,更多相關(guān)SQL中 and or in用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
利用SQL Server數(shù)據(jù)庫郵件服務實現(xiàn)監(jiān)控和預警
這篇文章主要介紹了利用數(shù)據(jù)庫郵件服務實現(xiàn)監(jiān)控和預警,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-10-10
sqlserver replace函數(shù) 批量替換數(shù)據(jù)庫中指定字段內(nèi)指定字符串參考方法
SQL Server有 replace函數(shù),可以直接使用;Access數(shù)據(jù)庫的replace函數(shù)只能在Access環(huán)境下用,不能用在Jet SQL中,所以對ASP沒用,在ASP中調(diào)用該函數(shù)會提示錯誤.2010-05-05
SQL Server誤區(qū)30日談 第27天 使用BACKUP WITH CHECKSUM可以替代DBCC CheckDB
乍一看,由于BACKUP WITH CHECKSUM會檢測所有分配出去的頁的校驗和的值,這個誤區(qū)貌似是這么回事,但實際上并不是這么回事2013-01-01
SQL Server Page結(jié)構(gòu)深入分析
這篇文章主要介紹了SQL Server Page結(jié)構(gòu)的詳細分析,從概念,原理等方便做了詳細說明,一起來學習下。2017-12-12
SQL?Server附加數(shù)據(jù)庫時出現(xiàn)錯誤的處理方法
通過附加功能添加現(xiàn)成的數(shù)據(jù)庫是非常方便的,然而有時會出現(xiàn)附加數(shù)據(jù)庫失敗,下面這篇文章主要給大家介紹了關(guān)于SQL?Server附加數(shù)據(jù)庫時出現(xiàn)錯誤的處理方法,需要的朋友可以參考下2022-12-12
SQL高級應用之使用SQL查詢Excel表格數(shù)據(jù)的方法
本文和大家講下如何在SQL Server分析器中查詢Excel電子表格的數(shù)據(jù),其實很簡單的,來看下下面的SQL語句吧。2010-03-03
SQL Server行列轉(zhuǎn)換的實現(xiàn)示例
在使用SQL Server數(shù)據(jù)庫的過程中我們經(jīng)常會遇到需要將行數(shù)據(jù)和列數(shù)據(jù)相互轉(zhuǎn)換顯示的問題,本文就來介紹一下,具有一定的參考價值,感興趣的可以了解一下2023-09-09

