首页 > 数据库 > mysql教程 > 如何规范 PostgreSQL 数组下标从 1 开始?

如何规范 PostgreSQL 数组下标从 1 开始?

DDD
发布: 2025-01-09 12:16:45
原创
399 人浏览过

How Can I Normalize PostgreSQL Array Subscripts to Start at 1?

标准化 PostgreSQL 数组索引,从 1 开始

PostgreSQL 的灵活性允许数组索引从任意数字开始。 然而,从索引 1 开始标准化数组通常是有益的。

旧方法

在 Postgres 9.6 之前,需要一种解决方法:

<code class="language-sql">SELECT ('[5:7]={1,2,3}'::int[])[array_lower('[5:7]={1,2,3}'::int[], 1):array_upper('[5:7]={1,2,3}'::int[], 1)]</code>
登录后复制

简化方法(Postgres 9.6 及更高版本)

Postgres 9.6引入了更加简洁高效的方法:

<code class="language-sql">SELECT my_arr[:];</code>
登录后复制

对于显式数组文字,为了清楚起见,请使用括号:

<code class="language-sql">SELECT ('[5:7]={1,2,3}'::int[])[:];</code>
登录后复制

这种简化的方法提供了与旧方法相当的性能,使其成为 Postgres 9.6 及后续版本的推荐解决方案。

以上是如何规范 PostgreSQL 数组下标从 1 开始?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板