SQL Server AND条件

倖福魔咒の 提交于 2020-03-24 19:44:42

3 月,跳不动了?>>>

在SQL Server(Transact-SQL)的AND 条件(也称为AND运算符)是用于测试在SELECT,INSERT,UPDATE,或DELETE语句中的两个或多个条件。

语法

在SQL Server(Transact-SQL中)AND条件的语法如下:

WHERE condition1
AND condition2
...
AND condition_n;

参数及说明

condition1, condition2, ... condition_n

所有必须满足选择记录的条件

注意

  • SQL Server AND条件允许您测试2个或更多的条件;

  • SQL Server AND条件要求的所有条件(如:condition1, condition2, condition_n)必须满足时才会将记录包含在结果集中返回;

 

示例 - SELECT语句中使用

第一个SQL Server AND条件查询SELECT语句涉及2个条件。

例如:

SELECT *
FROM employees
WHERE last_name = 'Smith'
AND employee_id < 499;

在这个 SQL Server AND示例将返回 last_name 是 “Smith” 并且 employee_id 小于 499 的员工记录,因为在SELECT语句中使用 “*” 符号,从 employees 表中返回结果集中的所有员工信息将会列出所有字段。

示例 - 在连接表中使用

我们的下一个SQL Server AND示例是显示 AND条件怎么在SELECT语句中连接多个表。

例如:

SELECT employees.employee_id, contacts.last_name
FROM employees, contacts
WHERE employees.employee_id = contacts.contact_id
AND employees.first_name = 'Sarah';

虽然上面的SQL没有什么问题,也可以使用传统 SQL INNER JOIN 写法应用如下。

例如:

SELECT employees.employee_id, contacts.last_name
FROM employees
INNER JOIN contacts
ON employees.employee_id = contacts.contact_id
WHERE employees.first_name = 'Sarah';

这个SQL Server AND条件示例中,将返回所有 employees 表中的 first_name 为 “Sarah”。而 employees 和 contacts 表的连接是从 employees 表中的 employee_id 字段,以及 contacts 表中的contact_id 字段来作连接。在这里您会发现所有的字段都使用表名前缀(如:contacts.last_name)。这是需要消除被引用字段的歧义; 因为在 employees 和 contacts 表中有同时存在两个字段名称相同。

在这种情况下,结果集将仅显示 employee_id 和 last_name 字段(如在SELECT语句的第一部分中列出的)。

示例 - 在INSERT语句中使用

接下来我们看一个 SQL Server AND 示例,演示如何在INSERT语句中使用AND条件。

例如:

INSERT INTO contacts
(contact_id, last_name, first_name)
SELECT employee_id, last_name, first_name
FROM employees
WHERE first_name = 'Joanne'
AND employee_id >= 800;

这个 SQL Server AND 条件例子就是将数据插入到 contacts 表中,所有 employee_id, last_name, 和 first_name 这些记录是从 employees 表按条件查询提取出来,其中 first_name 为 "Joanne" 和 EMPLOYEE_ID 大于或等于800。

 

示例 - 在UPDATE语句中使用

这个 SQL Server AND 条件示例演示在UPDATE语句中如何使用AND条件。

例如:

UPDATE employees
SET last_name = 'Johnson'
WHERE last_name = 'TBD'
AND employee_id < 300;

这个 SQL Server AND 条件示例将更新 employees 表中那些 last_name 的值是 'TBD' 并且 employee_id 小于 300 的记录,将这些记录的 last_name 值更新为 'Johnson' 。

 

示例 - 在DELETE语句中使用

最后,这个 SQL Server AND 示例将演示在DELETE语句中如何使用AND条件。

例如:

DELETE FROM employees
WHERE first_name = 'Darlene'
AND last_name = 'Henderson';

这个SQL Server AND 条件的例子就是从 employees  表,删除所有 first_name  是 'Darlene' 和 last_name 是  'Henderson' 的记录。

from => http://www.windoweye.com/sql_server/and.html

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!