一个数组
是一个特定数据类型的可变长度列表,包含一个或多个维度。
PostgreSQL 一直支持数组
,尽管随着时间的推移,相关函数的实现和可用性得到了极大的改进。
更改历史记录
正在开发中
- PostgreSQL 16
array_sample()
函数已添加(提交 888f2ea0)array_shuffle()
函数已添加(提交 888f2ea0)
- PostgreSQL 14
trim_array()
函数已添加(提交 0a687c8f)
- PostgreSQL 9.6
- 数组切片说明符中可以省略一个或两个边界(提交 6efbded6)
array_to_tsvector()
函数已添加(提交 6943a946)tsvector_to_array()
函数已添加(提交 6943a946)
- PostgreSQL 9.5
array_position()
函数已添加(初始提交 13dbc7a8)array_positions()
函数已添加(初始提交 13dbc7a8)- 数组支持已添加到
width_bucket()
(提交 e80252d4)
- PostgreSQL 9.4
- PostgreSQL 9.3
array_remove()
函数已添加(提交 84a42560)array_replace()
函数已添加(提交 84a42560)
- PostgreSQL 9.2
array_to_json()
函数已添加(提交 39909d1d)
- PostgreSQL 8.4
array_agg()
函数已添加(提交 3379fae6)array_fill()
函数已添加(提交 2c773296)array_length()
函数已添加(提交 f98f6ee0)array_ndims()
函数已添加(提交 254aecb7)cardinality()
函数已添加(提交 f98f6ee0)generate_subscripts()
函数已添加(提交 1fcb977a)unnest()
函数已添加(提交 c889ebce)
- PostgreSQL 8.2
- 已添加对
NULL
元素的支持(初始提交 cecb6075) array_nulls
向后兼容参数已添加(提交 cecb6075)
- 已添加对
- PostgreSQL 7.4
ARRAY[]
构造函数已添加(提交 730840c9)array_append()
函数已添加(提交 730840c9)array_cat()
函数已添加(提交 730840c9)array_lower()
函数已添加(提交 fef731d1)array_prepend()
函数已添加(提交 730840c9array_to_string()
函数已添加(提交 b3c0551e)array_upper()
函数已添加(提交 fef731d1)string_to_array()
函数已添加(提交 b3c0551e)
示例
数组的基本用法示例
postgres=# SELECT ARRAY['foo','bar','baz']; array --------------- {foo,bar,baz} (1 row)
有用链接
- 如何在 PostgreSQL 中更新数组 - Talha Saif Malik / CommandPrompt 于 2023 年 2 月发布的博文