MySQL IN和NOT IN是用于在查询中过滤结果的操作符,它们可以用于WHERE子句中。其中,IN操作符用于查询满足指定条件的记录,而NOT IN操作符用于查询不满足指定条件的记录。
下面分别对IN和NOT IN的使用方法进行详细说明,并提供实例说明。
MySQL IN操作符
IN操作符用于指定一个值列表,查询出与这些值中任何一个相等的记录。
语法格式:
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1, value2, ...);
其中,column_name是需要查询的列名,table_name是需要查询的表名,value1、value2等是要查询的值。
例如:
查询居住在“北京市”和“上海市”的人员信息。
SELECT * FROM employee WHERE city IN ('北京市', '上海市');
再比如:
查询仅卖过“A001”和“B001”产品的销售记录。
SELECT * FROM sales WHERE product_code IN ('A001', 'B001');
MySQL NOT IN操作符
NOT IN操作符与IN操作符相反,它用于指定一个值列表,查询出与这些值中任何一个不相等的记录。
语法格式:
SELECT column_name(s)
FROM table_name
WHERE column_name NOT IN (value1, value2, ...);
其中,column_name是需要查询的列名,table_name是需要查询的表名,value1、value2等是要查询的值。
示例1:
查询不居住在“北京市”和“上海市”的人员信息。
SELECT * FROM employee WHERE city NOT IN ('北京市', '上海市');
示例2:
查询没有卖过“A001”和“B001”产品的销售记录。
SELECT * FROM sales WHERE product_code NOT IN ('A001', 'B001');
总结
IN和NOT IN都是SQL查询语言中的常用操作符,在实际开发中经常用到。需要注意的是,IN和NOT IN操作符处理的都是固定的值列表,如果要查询动态的值列表,可以使用子查询或动态参数绑定等高级技巧。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解MySQL IN和NOT IN使用方法 - Python技术站