MySQL NOT操作符
时间:2019-02-04 12:52:25 来源:igfitidea点击:
MySQL NOT操作符(也称为NOT运算符)用于在SELECT,INSERT,UPDATE或DELETE语句中的否定特定的条件。
语法
MySQL中NOT操作符的语法为:
NOT condition
参数 | 说明 |
---|---|
condition | 要否定的条件。 |
MySQL NOT操作符示例
示例-NOT与IN一起使用
MySQL NOT操作符可以与IN 操作符结合使用。例如:
SELECT * FROM contacts WHERE first_name NOT IN ('Joseph','Andrew','Brad');
将返回contacts中除了名字是'Joseph','Andrew','Brad'的所有行
示例-NOT与IS NULL一起使用
MySQL NOT操作符也可以与IS NULL结合使用。
例如,
SELECT * FROM contacts WHERE first_name IS NOT NULL;
将从contacts表返回所有first_name不为NULL的记录。
示例-NOT与LIKE操作符结合使用
SELECT supplier_id, supplier_name FROM suppliers WHERE supplier_name NOT LIKE 'P%';
返回所有supplier_name不以P开头的记录。
示例-NOT与BETWEEN操作符结合使用
SELECT * FROM orders WHERE order_id NOT BETWEEN 300 AND 399;
返回order_id不在300-399之间的记录。 即小于300或者大于399的记录。
注意BETWEEN 300 AND 399 条件是包含300和399的
它等效于以下SELECT语句:
SELECT * FROM orders WHERE order_id < 300 OR order_id > 399;
示例-NOT结合EXISTS一起使用
MySQL NOT操作符也可以与EXISTS结合使用。表示查找不存在的记录。
例如,
SELECT * FROM suppliers WHERE NOT EXISTS (SELECT * FROM products WHERE suppliers.SupplierID = products.SupplierID);
查找没有提供产品的供应商名单。 (如果供应商没有提供产品,那么使用它的SupplierID去查找products表,记录就不存在。 符合我们的条件NOT EXISTS )