[运维|数据库] 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,则表示找到了该值。

相关推荐
i220818 Faiz Ul6 小时前
计算机毕业设计|基于springboot + vue鲜花商城系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
Apple_羊先森8 小时前
ORACLE数据库巡检SQL脚本--22、检查碎片程度最高的业务表
数据库·sql·oracle
OnYoung9 小时前
更优雅的测试:Pytest框架入门
jvm·数据库·python
山岚的运维笔记10 小时前
SQL Server笔记 -- 第85章:查询提示
数据库·笔记·sql·microsoft·sqlserver
chilavert31810 小时前
技术演进中的开发沉思-371:final 关键字(中)
java·前端·数据库
tryCbest10 小时前
SQL Server数据库
数据库·sql server
_codemonster11 小时前
PreparedStatement 和 Statement的区别
数据库·oracle
恒云客11 小时前
python uv debug launch.json
数据库·python·json