postgresql 数组函数全集
1. 分组聚合
ARRAY_AGG(参数1:字段名称) : 聚合同一个字段的多个值为一个数组对象
select product_name_in_sci_pdp,count(1),ARRAY_AGG(npi_product_name) from dim_product_mapping GROUP BY product_name_in_sci_pdp
2 数组拆分
2.1 数组拆分,还原为多行
select 'A' as fieldName1,'B' as fieldName2, "unnest"(ARRAY['CN','AR','BR','IN']) AS plant
2.2 数组拆分,重组为一个字符串
array_to_string(参数1:数组,参数2:拼接字符) : 将数组中的值拼接成新的字符串
select product_name_in_sci_pdp,count(1),array_to_string(ARRAY_AGG(npi_product_name),',') from dim_product_mapping GROUP BY product_name_in_sci_pdp
2.3 字符串拆分为数组
string_to_array(参数1:原始字符串,参数2:拆分字符) : 将原始字符串按拆分字符串拆分为一个数组
with t_level_1 as(
SELECT '123,456,789'::VARCHAR as include_plants
)
SELECT string_to_array(include_plants, ',') as plants from t_level_1
3. 数组去重
没有现成的方法,需要自己写一个方法
CREATE OR REPLACE FUNCTION "public"."array_distinct"(anyarray)RETURNS "pg_catalog"."anyarray" AS $BODY$ SELECT ARRAY(SELECT DISTINCT unnest($1));
$BODY$LANGUAGE sql VOLATILECOST 100
示例
select product_name_in_sci_pdp,count(1),array_distinct(ARRAY_AGG(npi_product_name)) from dim_product_mapping GROUP BY product_name_in_sci_pdp
4. 数组取第一个元素
需要去一下重
SELECT demand_region,(array_distinct(ARRAY_AGG(demand_factory)))[1] from dim_factory_sourcing_dependency where demand_process='Ship FG' GROUP BY demand_region ORDER BY demand_region
5.单个元素关联数组
使用 any() 方法实现
OR group_id = any(string_to_array(mgmt_team_group, ','))
其他的后续补充…
参考:
https://blog.csdn.net/shulinshulinzi/article/details/115245325?spm=1001.2101.3001.6650.18&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EOPENSEARCH%7ERate-18.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EOPENSEARCH%7ERate-18.pc_relevant_default&utm_relevant_index=23
postgresql 数组函数全集相关推荐
- postgresql字符串函数全集
1. trim 删除字符串头部/两端/尾部的指定字符 trim([leading | trailing | both] [characters] from string) 示例:去掉字段首尾多余空格 ...
- PostgreSQL 10.1 手册_部分 II. SQL 语言_第 9 章 函数和操作符_9.18. 数组函数和操作符...
9.18. 数组函数和操作符 表 9.48显示了可以用于数组类型的操作符. 表 9.48. 数组操作符 操作符 描述 例子 结果 = 等于 ARRAY[1.1,2.1,3.1]::int[] = AR ...
- PostgreSQL数组操作符函数
9.18. 数组函数和操作符 表 9-45显示了可以用于 array 类型的操作符. 表 9-45. Array 操作符 操作符 描述 例子 结果 = 等于 ARRAY[1.1,2.1,3.1]::i ...
- Postgresql数组操作符及数组函数
表1.数组操作符 操作符 描述 例子 结果 = 等于 ARRAY[1.1,2.1,3.1]::int[] = ARRAY[1,2,3] t <> 不等于 ARRAY[1,2,3] < ...
- php手册数组函数,PHP - Manual手册 - 函数参考 - Array 数组函数 - array_diff计算数组的差集...
PHP - Manual手册 - 函数参考 - Array 数组函数 - array_diff计算数组的差集 array_diff (PHP 4 >= 4.0.1, PHP 5) array_d ...
- PostgreSQL常用函数以及操作符
一.逻辑操作符: 常用的逻辑操作符有:AND.OR和NOT.其语义与其它编程语言中的逻辑操作符完全相同. 二.比较操作符: 下面是PostgreSQL中提供的比较操作符列表: 操作符 描述 < ...
- PostgreSQL之函数和操作符
一.逻辑操作符: 常用的逻辑操作符有:AND.OR和NOT.其语义与其它编程语言中的逻辑操作符完全相同. 二.比较操作符: 下面是PostgreSQL中提供的比较操作符列表: 操作符 描述 < ...
- PostgreSQL 数组忽略大小写匹配
PostgreSQL 数组忽略大小写匹配 作者 digoal 日期 2016-11-19 标签 PostgreSQL , 开发 , 数组 , any匹配 , 忽略大小写 背景 一位兄弟的开发需求,要求 ...
- Numpy 一维、二维数组、size/dtype/shape属性、数组函数arange/linspace/logspace /diag/zeros/ones/random 、多维数组索引和筛选)
参考: https://gitbook.cn/gitchat/column/undefined/topic/5e3bceadec8d9033cf924665 打开 IPython ,创建 Python ...
最新文章
- 推荐十一个吊炸天的AI学习项目
- wxpython输入框_基于wxPython的GUI实现输入对话框(1)
- ASP中关于全局页面的作用 asax文件
- 微信怎么开免流量服务器,微信如何省流量?关掉这几个功能 省一大半流量
- [svc][op]从历险压缩日志里网站pv uv统计
- 嵌入式Linux下Qt的中文显示
- LeetCode 1003. 检查替换后的词是否有效(栈)
- JEECG 缓存用法
- linux python开发环境sql数据迁移到mysql_运用Python语言编写获取Linux基本系统信息(三):Python与数据库编程,把获取的信息存入数据库...
- ARM汇编EQU伪指令
- vue 动态scss变量,包含16进制转rgba,rgba转16进制
- matlab_使用dsolve函数求解微分方程(逻辑斯蒂模型)示例
- 云计算简史_云计算的概念和发展历史
- 适合学生党上手测试的免费云服务器推荐
- python可视化:Plotting with pandas and seaborn
- 粤嵌实习-linux下madplay播放器的下载和使用、线程的介绍和创建一个广告循环播放线程
- 专利解析|多维建模结合AI识别商品特征的方法
- moveit和gazebo的联合抓取仿真
- gitee如何删除仓库
- 重测信度及常见评价方法