MySQL/Oracle用逗号分割的id怎么实现in (逗号分割的id字符串)。find_in_set(`id`, ‘1,2,3‘) 函数,

1.MySQL

1.1.正确写法

sql 复制代码
select * from student where find_in_set(`s_id`, '1,2,3');  

1.2.错误示范

sql 复制代码
select * from student where find_in_set(`s_id`, '1,2 ,3');     -- 注意,中间不能有空格。1、3
select * from student where find_in_set(`s_id`, '1,2, 3');     -- 注意,中间不能有空格。1、2
select * from student where find_in_set(`s_id`, '1,2 , 3');    -- 注意,中间不能有空格。1

2.Oracle

2.1.方式一

sql 复制代码
select * 
from student 
where s_id in
	(
	select regexp_substr('1,2,3', '[^,]+', 1, level) as value
	from dual
	connect by regexp_substr('1,2,3', '[^,]+', 1, level) is not null
	);

2.2.方式二

sql 复制代码
-- 在Oracle SQL中,没有内置的FIND_IN_SET函数,但是你可以使用一些技巧来实现类似的功能。以下是一个示例:

SELECT *
FROM student
WHERE ',' || '1,2,3' || ',' LIKE '%,' || s_id || ',%';
相关推荐
tjc199010052 分钟前
SQL如何实现跨行数据比较分析_LEAD函数处理数据同步问题
jvm·数据库·python
HHHHH1010HHHHH5 分钟前
golang如何实现可靠消息最终一致_golang可靠消息最终一致实现实战
jvm·数据库·python
独隅19 分钟前
TLS协议深度解析:现代互联网的安全基石
数据库
m0_6138562921 分钟前
CSS如何实现复杂UI组件开发_结合BEM规范提升架构清晰度
jvm·数据库·python
阿维的博客日记21 分钟前
隔离性和mvcc有什么关系吗
数据库·mysql·事务·mvcc·隔离性
qq_3300379925 分钟前
告别重复编码-Symfony自动化开发指南
jvm·数据库·python
腾科IT教育25 分钟前
PostgreSQL 认证:PGCE 认证考什么?难度大吗?
数据库·postgresql·pgce·pgce认证·postgresql认证
能年玲奈喝榴莲牛奶26 分钟前
国产数据库免费认证
数据库·大学生·考证·数据库认证·免费证书
摇滚侠36 分钟前
Oracle 标准结构 一个项目 一个用户 一个表空间
数据库·oracle