[运维|数据库] msql中的 FIND_IN_SET如何转化为pg数据中的ARRAY_POSITION的函数

MySQL 中,FIND_IN_SET 函数用于查找一个值是否存在于逗号分隔的字符串列表中。在 PostgreSQL 中,可以使用 string_to_array 函数将逗号分隔的字符串转换为数组,然后使用 ARRAY_POSITION 函数来查找值是否在数组中。

以下是如何将MySQL中的 FIND_IN_SET 函数转换为 PostgreSQL 中的函数:

MySQL 查询示例:

sql 复制代码
SELECT FIND_IN_SET('value', 'value1,value2,value3');

等效的 PostgreSQL 查询示例:

sql 复制代码
SELECT CASE WHEN ARRAY_POSITION(string_to_array('value1,value2,value3', ','), 'value') IS NOT NULL THEN 'Found' ELSE 'Not Found' END;

在上面的 PostgreSQL 查询中,我们首先使用 string_to_array 函数将逗号分隔的字符串 'value1,value2,value3' 转换为一个数组,然后使用 ARRAY_POSITION 函数来查找 'value' 是否在数组中。如果该函数返回的位置不为 NULL,则表示找到了该值。

相关推荐
Mike117.2 分钟前
GBase 8a 批处理任务里的事务提交粒度和回滚边界
数据库
小江的记录本3 分钟前
【JEECG Boot】 《JEECG Boot 数据字典使用教程》(完整版)
java·前端·数据库·spring boot·后端·spring·mybatis
yjb.gz4 分钟前
Oracle物化视图概述
数据库·oracle
fundoit4 分钟前
MySQL Workbench中的权限设置不生效
数据库·mysql
ZzzZZzzzZZZzzzz…7 分钟前
MySQL备份还原方法2----LVM
linux·运维·数据库·mysql·备份还原
i220818 Faiz Ul8 分钟前
教育资源共享平台|基于springboot + vue教育资源共享平台系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·教育资源共享平台
M--Y10 分钟前
Redis常用数据类型-2
数据库·redis
不会写DN12 分钟前
SQL 单表操作全解
java·服务器·开发语言·数据库·sql
tang7778917 分钟前
小红书平台用什么代理IP?数据采集IP封禁解决方法
数据库·爬虫·python·网络协议·ip
XDHCOM23 分钟前
ORA-23336: priority group不存在故障修复远程处理
数据库·oracle