1 .SQL IN 运算符
IN运算符允许您在WHERE子句中指定多个值。
IN运算符是多个OR条件的简写。
SELECT "栏位名" FROM "表格名" WHERE "栏位名" IN('值一', '值二', ...)
假设我们有两个表格:
tb_Teachers_info
tb_City_info
然而我们要在tb_Teachers_info中找出所有来自American的教师姓名
SQL语句: select TeachersName from tb_Teachers_info whereCity in('American');
结果:
如果我们要从tb_Teachers_info中找出与tb_City_info中同名教师的TeachersId
SQL 语句: select TeachersId from tb_Teachers_info whereTeachersName in(selectTeachersName from tb_City_info);
结果:
2.SQL BETWEEN 运算符
BETWEEN运算符选择给定范围内的值。值可以是数字,文本或日期。
BETWEEN运算符是包含性的:包括开始和结束值。
SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2;
演示数据库
在本教程中,我们将使用著名的Northwind示例数据库。
以下是”Products”表中的数据:
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之间的所有产品:
SELECT * FROM Products WHERE Price BETWEEN 10 AND 20;
NOT BETWEEN 操作符实例
要显示前面示例范围之外的产品,请使用NOT BETWEEN:
实例 SELECT * FROM Products WHERE Price NOT BETWEEN 10 AND 20;
带有 IN 的 BETWEEN 操作符实例
以下SQL语句选择价格在10到20之间但CategoryID不是1、2或3的所有产品:
实例 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’的产品:
实例 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’的所有产品:
实例 SELECT * FROM Products WHERE ProductName NOT BETWEEN 'Carnarvon Tigers' AND 'Mozzarella di Giovanni' ORDER BY ProductName;
示例表
下面是选自 “Orders” 表的数据:
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运算符结合使用。
OR运算符用于根据多个条件筛选记录:
如果由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';
到此这篇关于SQL中 and or in的用法的文章就介绍到这了,更多相关SQL中 and or in用法内容请搜索IT俱乐部以前的文章或继续浏览下面的相关文章希望大家以后多多支持IT俱乐部!