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

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

2023-08-21作者:gwwp168来源:www.gwwp168.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 章描述了内建操作符。

  • Oracle OCP认证没落了吗
  • PostgreSQL技术大讲堂 - 第87讲:重讲系统安全和数据库安全
  • PostgreSQL认证培训推荐机构
  • Oracle OCM证书有效期3年?这是个假消息
  • 2025年4月中国数据库流行度排行榜:OceanBase超过PolarDB登顶
  • Apache Doris数据库
  • openGauss数据库
  • PingCAP TiDB数据库
  • TDengine时序数据库
  • 阿里云AnalyticDB云原生数据仓库
  • 阿里云云原生数据库PolarDB
  • 奥星贝斯OceanBase数据库
  • 达梦数据库管理系统DM8
  • 电科金仓KingbaseES数据库管理系统
  • 华为GaussDB云数据库
  • 金篆信科GoldenDB数据库
  • 浪潮KaiwuDB数据库
  • 南大通用GBASE数据库
  • 腾讯云分布式数据库TDSQL
  • 羲和 (Halo) 数据库
  • 崖山 (YashanDB) 数据库
  • 亚信安慧AntDB数据库
  • 考OCP认证要交哪些费用
  • Oracle OCP证书有效期3年?与官方人员确认这是个假消息
  • 4月26日,工信部人才交流中心 & CUUG - PGCP+PGCM认证考试完成!
  • Apache IoTDB
  • DolphinDB数据库
  • Easysearch分布式搜索型数据库
  • IvorySQL数据库
  • NebulaGraph数据库
  • OCP认证考试指南:费用、大纲、备考、题库、证书及有效期全面解析
  • SelectDB数据库
  • SourceDB数据库
  • SQLite数据库
  • StarRocks数据库
  • SUNDB数据库
  • TuGraph图数据库
  • 海量数据Vastbase数据库
  • 华为云数据库 GeminiDB
  • 华为云数据库TaurusDB
  • 磐维数据库PanWeiDB
  • 神舟通用数据库
  • 实时数仓 Hologres
  • 天翼云数据库TeleDB
  • 图数据库gStore
  • 星瑞格SinoDB数据库管理系统
  • 虚谷xugudb数据库
  • 云和恩墨MogDB数据库
  • 云原生数据库GaiaDB(盖亚)
  • 2025年3月28日乔同学PostgreSQL管理员中级认证