当前位置: hcjggs->postgresql > PostgreSQL手册-》sql语法-》值表达式-》下标-》域选择-》操作符调用

PostgreSQL手册-》sql语法-》值表达式-》下标-》域选择-》操作符调用

2023-08-21作者:hcjggs来源:www.hcjggs.com

PostgreSQL教程-sql语法-值表达式-下标-域选择-操作符调用

4.2.3. 下标

如果一个表达式得到了一个数组类型的值,那么可以抽取出该数组值的一个特定元素:

expression[subscript]

或者抽取出多个相邻元素(一个“数组切片”):

expression[lower_subscript:upper_subscript]

(这里,方括号[ ]表示其字面意思)。每一个下标自身是一个表达式,它必须得到一个整数值。

通常,数组表达式必须被加上括号,但是当要被加下标的表达式只是一个列引用或位置参数时,括号可以被忽略。还有,当原始数组是多维时,多个下标可以被连接起来。例如:

mytable.arraycolumn[4]

mytable.two_d_column[17][34]

$1[10:42]

(arrayfunction(a,b))[42]

最后一个例子中的圆括号是必需的。详见第 8.15 节。

4.2.4. 域选择

如果一个表达式得到一个组合类型(行类型)的值,那么可以抽取该行的指定域

expression.fieldname

通常行表达式必须被加上括号,但是当该表达式是仅从一个表引用或位置参数选择时,圆括号可以被忽略。例如:

mytable.mycolumn

$1.somecolumn

(rowfunction(a,b)).col3

(因此,一个被限定的列引用实际上只是域选择语法的一种特例)。一种重要的特例是从一个组合类型的表列中抽取一个域:

(compositecol).somefield

(mytable.compositecol).somefield

这里需要圆括号来显示compositecol是一个列名而不是一个表名,在第二种情况中则是显示mytable是一个表名而不是一个模式名。

你可以通过书写.*来请求一个组合值的所有域:

(compositecol).*

这种表示法根据上下文而表现不同;有关详细信息,请参见第 8.16.5 节。

4.2.5. 操作符调用

对于一次操作符调用,有三种可能的语法:

expression operator expression(二元中缀操作符)

operator expression(一元前缀操作符)

expression operator(一元后缀操作符)

其中operator记号遵循第 4.1.3 节的语法规则,或者是关键词AND、OR和NOT之一,或者是一个如下形式的受限定操作符名:

OPERATOR(schema.operatorname)

哪个特定操作符存在以及它们是一元的还是二元的取决于由系统或用户定义的那些操作符。第 9 章描述了内建操作符。

  • 10月28日,PostgreSQL初级、中级认证考试顺利结束
  • 10月份PG考试的证书来啦!工信人才培训证书+认证证书!
  • PostgreSQL技术大讲堂 - 第32讲:数据库参数调整
  • PostgreSQL技术大讲堂 - 第34讲:调优工具pgBagder部署
  • PostgreSQL技术大讲堂 - 第33讲:并行查询管理
  • PostgreSQL技术大讲堂 - 第31讲:SQL调优技巧
  • PostgreSQL PGCP是什么级别的认证?
  • PGCP中级认证考试的三个维度考核
  • PolarDB-X体系架构architecture
  • 什么是 PolarDB-X 云原生分布式数据库系统
  • postgresql从小白到高手 - 第38讲:数据库备份
  • postgresql从小白到高手 - 第37讲:postgres物理备份和恢复概述
  • postgresql从小白到高手 - 第36讲:postgresql逻辑备份
  • postgresql从小白到高手 - 第35讲:中间件PgBouncer部署
  • PostgreSQL PGCP是什么级别的认证?
  • PGCP中级认证考试的三个维度考核
  • 国内PostgreSQL认证,工信部人才交流中心PG技术能力提升培训认证
  • 11月18日直播!杭州峰会大咖晚宴煮酒论英雄+PG技术大讲堂(34)
  • 2023年12月,PostgreSQL认证培训红头文件【工信部人才交流中心】
  • 10月16日,昨天新鲜出炉的Oracle DB 19C OCP证书
  • PolarDB-X高可用与容灾(WIP)
  • 11月27日,CUUG新鲜出炉的Oracle DB 19C OCP证书
  • Oracle 19c OCM认证好考吗?CUUG OCM成绩公布
  • Oracle 19c OCM认证考试成绩出炉!- CUUG WDP培训中心
  • 菏泽学院 - 国产数据库工作室揭牌仪式圆满成功
  • postgresql技术大讲堂 - 第40讲:数据库不完全恢复
  • 1月17日阿里云PolarDB开发者大会PolarDB DevCon
  • 2024-1-12,恭喜CUUG 王同学获得Oracle OCP证书
  • PostgreSQL认证证书(实图)
  • 国内PostgreSQL认证,工信部人才交流中心PG技术能力提升培训认证
  • 中国PostgreSQL技术能力培训认证
  • 10月25日,CUUG新鲜出炉的Oracle DB 19C OCP证书
  • 10月26日,CUUG新鲜出炉的Oracle DB 19C OCP证书
  • 揭秘Oracle全球数据库的威力:Oracle Database 23c的进步
  • 温州大学 - 开源国产数据库工作室成立揭牌仪式圆满结束
  • postgresql技术大讲堂 - 第39讲:数据库完全恢复
  • PostgreSQL技术大讲堂 - 第41讲:表空间备份与恢复
  • PostgreSQL技术大讲堂 - 第42讲:pg_rman部署与使用
  • PostgreSQL技术大讲堂 - 第43讲:流复制原理
  • PostgreSQL技术大讲堂 - 第29讲:执行计划与成本估算
  • Postgres社区创始人:关系型数据库的未来是光明的
  • 甲骨文基于PostgreSQL的OCI数据库即将登场
  • PostgreSQL技术大讲堂 - 第30讲:多表连接方式
  • PostgreSQL认证考试中心
  • 工信人才信创PG认证培训红头文件【2023年】
  • 大连财经学院 - 国产数据库工作室揭牌仪式圆满成功(CUUG)
  • 河北工程技术学院 - 国产数据库工作室揭牌仪式圆满成功
  • 阿里云PolarDB开发者大会圆满结束,CUUG两次获奖
  • 2024年首张Oracle OCP证书-CUUG胡同学
  • 北京培黎职业学院 - PolarDB开源国产数据库工作室成立揭牌 - CUUG