执行sql:select node_ids from t_node_drug_dir where drug_code = 68
结果为:1,4,5,6
问题:现需判断id是否在node_ids字符串中
思路:需要把node_ids转换为数组,然后判断id是否在数组中
使用regexp_split_to_array函数对字符串进行截取:SELECT regexp_split_to_array('kenyon,love,,china,!',',');
结果为:"{kenyon,love,"",china,!}"
方法一:
select * from t_node
where id in (
select unnest((select (regexp_split_to_array(node_ids,','))::integer[] from t_node_drug_dir where drug_code = 68))
)
方法二:
select * from t_node
where (
(select (regexp_split_to_array(node_ids,','))::integer[] from t_node_drug_dir where drug_code = 68)
) @> array[id]
方法三:
select * from t_node
where id =
any (
(select (regexp_split_to_array(node_ids,',')) dd from t_node_drug_dir where drug_code = 68)::integer[]
)
但如下写法不行:
select * from idms.t_node
where id =
any (
(select (regexp_split_to_array(to_node_ids,','))::integer[] dd from yk.t_node_drug_dir where drug_code = 6894)
)
参考资料:
http://www.csdn123.com/html/blogs/20130523/15615.htm
http://www.cnblogs.com/gaojian/p/3190737.html
相关推荐
PostgreSQL 10 基础课程第四章 常用函数数组拼接相关函数
PostgreSQL 10 基础课程第四章 常用函数数组分隔符处理函数
### 一、PostgreSQL数组类型概述 1. **基本与自定义类型**: PostgreSQL支持数组类型,这些数组可以包含基本数据类型(如整数、字符串等),也可以是用户自定义的数据类型。 2. **下标规则**: 与许多编程语言...
当与PostgreSQL数据库配合使用时,可能会遇到需要调用存储过程或自定义函数的情况,特别是当这些函数接收数组作为参数时。本篇文章将详细介绍如何在MyBatis中调用PostgreSQL存储过程,尤其是如何处理数组类型的入参...
PostgreSQL 数据类型和数学函数 PostgreSQL 是一个功能强大且广泛使用的开源关系数据库管理系统,本文将概述 PostgreSQL 的数据类型和数学函数。 一、数据类型 PostgreSQL 支持多种数据类型,包括整型、浮点型...
PostgreSQL PostgreSQL PostgreSQL学习手册 学习手册 学习手册 (函数和操作符 函数和操作符 函数和操作符 <一>) 25 一、逻辑操作符: 一、逻辑操作符: 一、逻辑操作符: 一、逻辑操作符: .25 四、字符串函数和操作...
本篇总结将介绍PostgreSQL中与正则表达式相关的常用函数,这些函数可以帮助数据库开发者和管理员高效地进行数据处理和模式匹配。 首先,PostgreSQL提供了一系列内置的正则表达式函数,它们主要包含以下几类: 1. ...
在实际应用中,直接使用如上示例中那样的正则表达式解析Postgresql数组并不是最推荐的做法。Postgresql提供了PHP专用的数据库抽象层扩展,如PDO(PHP Data Objects)和mysqli,它们能够更加安全和方便地与数据库交互...
查询数组类型数据时,可以使用 PostgreSQL 提供的内置函数 `unnest()` 来展开数组,例如获取每个产品的所有标签: ```sql SELECT title, unnest(tags) items FROM products; ``` 此外,还可以基于数组进行复杂的...
另外,PostgreSQL提供了多种内置函数和操作符来处理数组,例如`unnest()`可以将数组展开为多行,`array_cat()`用于合并数组,`array_length()`获取数组长度,`array_position()`查找元素的位置。在编写涉及数组的SQL...
首先,当一个查询提交给PostgreSQL时,函数`exec_simple_query()`被调用,它是整个查询处理的起点。对于非实用程序命令(如INSERT、UPDATE、DELETE等),会调用`pg_plan_queries()`进行规划。这个函数会处理一系列的...
它基本上包含其他所有商业或开源数据库中你能找到的功能(如函数索引、触发器、分析函数、自定义函数等),甚至一些商业数据库中没有的功能它也有(如表列的类型支持数组类型、JSON和JSONB类型,支持空间索引等)。...
PostgreSQL有丰富的内置数据类型,如整数、浮点数、字符串、日期/时间、数组、几何对象等。API中会讲解如何在程序中处理这些类型,包括转换、比较和操作。 五、事务处理 在PostgreSQL中,事务是保证数据一致性的...
本文主要探讨了在PostgreSQL教程的第七部分,也就是函数和操作符的第三部分,包括序列操作函数、条件表达式、数组函数和操作符、系统信息函数以及系统管理函数。 首先,我们来关注序列操作函数。序列对象在...
数组处理函数库 拼写检查函数库 BC 高精确度函数库 历法函数库 ClibPDF 函数库 日期与时间函数库 DBA 函数库 dBase 格式资料表函数库 dbm 类数据库函数库 目录管理函数库 动态链接函数库 程序执行功能...
8. **更好的XML支持**: PostgreSQL 8.3增强了对XML的内置支持,包括XML类型、XML索引和XML操作函数,使得数据库能够更好地处理XML数据。 9. **增强的复制功能**: 虽然完整的逻辑复制在后续版本中才实现,但8.3开始...
除了常见的整数、浮点数、字符串等基础类型,PostgreSQL 还支持数组、JSON、XML、几何对象、时间区间等多种复杂数据类型,这使得它能处理各种复杂的数据结构。 3. **强大的查询能力**: PostgreSQL 支持复杂的SQL...
而在 **PostgreSQL** 中,除了支持这些结构外,还提供了 `LOOP` 和 `FOR` 循环结构,后者用于迭代集合或数组。 #### 存储过程和函数 - **创建存储过程或函数** 的语法在两者之间也有所不同。在 **MS SQL Server** ...
3. **强大的查询语言**:其内置的SQL方言,PostgreSQL SQL,支持复杂的查询和函数,如窗口函数、递归查询和自定义聚合函数,提供强大的数据分析能力。 4. **事务处理**:PostgreSQL支持多版本并发控制(MVCC),...