SQL IN

简介: 【11月更文挑战第05天】

SQL IN 操作符详细讲解

IN 操作符在 SQL 中用于在 WHERE 子句中指定多个值,用于筛选出列中等于这些值中的任意一个的记录。如果 IN 子句中的任何一个值与列中的值匹配,那么该行就会被选中。

基本语法

SELECT column1, column2, ...
FROM table_name
WHERE column IN (value1, value2, ...);
  • column1, column2, ...:要选择的字段名称,可以为多个字段。
  • table_name:要查询的表名称。
  • column:要在 IN 子句中检查的列。
  • value1, value2, ...:IN 子句中指定的值列表。

应用

IN 操作符常用于以下情况:

  1. 筛选特定值:当你想要从列中筛选出特定的几个值时。
  2. 简化多个 OR 条件:IN 可以替代多个 OR 条件,使查询更简洁。

代码示例

假设我们有一个名为 Employees 的表,包含了员工的信息:

+----+----------+--------+------------+
| id | name     | salary | department |
+----+----------+--------+------------+
| 1  | Alice    | 5000   | HR         |
| 2  | Bob      | 6000   | IT         |
| 3  | Charlie  | 5500   | IT         |
| 4  | David    | 7000   | Finance    |
| 5  | Eve      | 8000   | IT         |
+----+----------+--------+------------+

示例 1:筛选特定部门的员工

-- 选取 IT 和 HR 部门的所有员工
SELECT * FROM Employees
WHERE department IN ('IT', 'HR');

输出结果:

+----+----------+--------+------------+
| id | name     | salary | department |
+----+----------+--------+------------+
| 1  | Alice    | 5000   | HR         |
| 2  | Bob      | 6000   | IT         |
| 3  | Charlie  | 5500   | IT         |
| 4  | David    | 7000   | Finance    |
+----+----------+--------+------------+

示例 2:筛选特定薪水等级的员工

-- 选取薪水为 5000 或 6000 的员工
SELECT * FROM Employees
WHERE salary IN (5000, 6000);

输出结果:

+----+----------+--------+------------+
| id | name     | salary | department |
+----+----------+--------+------------+
| 1  | Alice    | 5000   | HR         |
| 2  | Bob      | 6000   | IT         |
+----+----------+--------+------------+
目录
相关文章
|
4月前
|
数据采集 机器学习/深度学习 消息中间件
云客服系统升级最佳实践:从被动响应到主动服务的架构演进与落地指南
随着企业数字化转型进入深水区,传统“接电话、记工单”的客服模式已无法满足2026年的客户体验要求。本文从架构演进视角,系统阐述云客服系统如何从被动响应模式升级为主动服务模式,涵盖事件驱动架构设计、客户健康度评分模型构建、预测式服务触发机制、自动化旅程编排等核心技术实践。文章提供完整的架构设计方案、关键指标体系和分阶段落地路径,帮助技术团队以可控成本实现客服系统的智能化升级。
283 0
|
机器学习/深度学习 监控 算法
java训练的模型怎么保存?从训练到部署:Java环境下ML模型保存策略与测试数据构建
本文系统讲解Java环境下机器学习模型的保存策略与测试数据构建方法,涵盖Weka、DL4J等框架的模型持久化技术,深入探讨Java序列化、PMML跨平台格式及版本管理,并结合JavaFaker与自定义生成器实现高质量测试数据模拟,助力企业级ML应用高效部署与验证。
612 0
|
10月前
|
人工智能 并行计算 搜索推荐
阿里云GPU服务器快速部署ai大模型by丰富的GPU卡
阿里云GPU服务器提供96GB显存、900GB/s NVLink及Transformer引擎,支持Qwen-72B等大模型快速部署,搭配vLLM框架提升推理效率,适用于高并发、长序列AI任务,助力大模型高效稳定运行
665 0
|
缓存 应用服务中间件 API
Nginx
Nginx:现代互联网的流量调度核心,以事件驱动架构解决高并发难题,集高性能Web服务、反向代理、负载均衡与API网关于一体,助力网站加速与系统稳定,支撑海量用户实时交互,是数字时代不可或缺的基础设施引擎。
|
tengine 应用服务中间件 nginx
Tengine命令安装教程
该内容提供了一套详细的步骤指南,用于通过 FinalShell 远程连接并安装 Tengine 服务器。从下载与配置 Tengine,到使用 yum 安装必要的组件,再到编译、安装及配置 Nginx,以及如何处理 HTTPS 部署和证书设置,最后涵盖了基本的站点程序控制命令。此外,还提供了隐藏版本号的方法及文本编辑技巧。
|
存储 SQL 关系型数据库
面试官:你能聊聊 binlog、undo log、redo log 吗?
本文详细解析了MySQL数据库中的三种日志:binlog、undo log和redo log。binlog用于记录数据库的所有表结构变更及数据修改,支持归档、主从复制和数据恢复;undo log用于事务回滚,确保事务的原子性和实现多版本控制;redo log则用于crash-safe,确保数据库异常重启后已提交记录不丢失。文章通过实例和图表,深入浅出地介绍了每种日志的特点、应用场景及其实现机制。适合数据库开发者和运维人员阅读。
1319 2
|
JSON Shell 数据格式
在Docker中,如何查看镜像支持的环境变量?
在Docker中,如何查看镜像支持的环境变量?
|
关系型数据库 MySQL 数据库
navicat 查看,设计并导出数据库 ER图
navicat 查看,设计并导出数据库 ER图
5487 5