mysql的select语句中in的用法是什么

2023年 4月 16日 27.7k 0

在mysql中,select语句内in常用于where表达式中,其作用是查询某个范围内的数据,in查询的范围数据并不一定是明确的,可能会包含子查询语句,语法为“select * from where...in(范围数据或者

在mysql中,select语句内in常用于where表达式中,其作用是查询某个范围内的数据,in查询的范围数据并不一定是明确的,可能会包含子查询语句,语法为“select * from where...in(范围数据或者子查询语句)”。

本教程操作环境:windows10系统、mysql8.0.22版本、Dell G3电脑。

mysql的select语句中in的用法是什么

一、基础用法

mysql中in常用于where表达式中,其作用是查询某个范围内的数据。

select * from where field in (value1,value2,value3,…)

当 IN 前面加上 NOT 运算符时,表示与 IN 相反的意思,即不在这些列表项内选择

select * from where field not in (value1,value2,value3,…)

二、IN 子查询

更多情况下,IN 列表项的值是不明确的,而可能是通过一个子查询得到的:

SELECT * FROM article WHERE uid IN(SELECT uid FROM user WHERE status=0)

在这个 SQL 例子里,我们实现了查出所有状态为 0 的用户(可能是被禁止)的所有文章。首先通过一个查询得到所有所有 status=0 的用户:

SELECT uid FROM user WHERE status=0

然后将查询结果作为 IN 的列表项以实现最终的查询结果,注意在子查询中返回的结果必须是一个字段列表项。

示例:查询book表中id为2和4的所有数据:

有book数据表,内容如下:

17.png

查询语句和查询结果见如下图示:

18.png

以上就是mysql的select语句中in的用法是什么的详细内容,更多请关注每日运维其它相关文章!

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论