在SQL Server(Transact-SQL)的AND 條件(也稱爲AND運算符)是用於測試在SELECT,INSERT,UPDATE,或DELETE語句中的兩個或多個條件。html
在SQL Server(Transact-SQL中)AND條件的語法以下:sql
WHERE condition1 AND condition2 ... AND condition_n;
condition1, condition2, ... condition_n測試
全部必須知足選擇記錄的條件spa
SQL Server AND條件容許您測試2個或更多的條件;server
SQL Server AND條件要求的全部條件(如:condition1, condition2, condition_n)必須知足時纔會將記錄包含在結果集中返回;htm
示例 - SELECT語句中使用get
第一個SQL Server AND條件查詢SELECT語句涉及2個條件。it
例如:io
SELECT * FROM employees WHERE last_name = 'Smith' AND employee_id < 499;
在這個 SQL Server AND示例將返回 last_name 是 「Smith」 而且 employee_id 小於 499 的員工記錄,由於在SELECT語句中使用 「*」 符號,從 employees 表中返回結果集中的全部員工信息將會列出全部字段。ast
咱們的下一個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語句的第一部分中列出的)。
接下來咱們看一個 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。
這個 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' 。
最後,這個 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' 的記錄。