如何从PostgreSQL 9.4中的匿名行类型获取第一个字段?

前端之家收集整理的这篇文章主要介绍了如何从PostgreSQL 9.4中的匿名行类型获取第一个字段?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
=# select row(0,1) ;
  row
-------
 (0,1)
(1 row)

如何在同一查询中获得0?我认为以下类型的工作,但有任何简单的方法吗?

=# select json_agg(row(0,1))->0->'f1' ;
 ?column?
----------
 0
(1 row)

没有运气类阵列语法[0].

谢谢!

您的行类型是匿名的,因此您无法轻松访问其元素.您可以做的是创建一个TYPE,然后将您的匿名行转换为该类型并访问该类型中定义的元素:
CREATE TYPE my_row AS (
  x integer,y integer
);

SELECT (row(0,1)::my_row).x;

就像Craig Ringer在你的问题中评论的那样,你应该避免产生匿名行,如果你能帮助它,并输入你在数据模型和查询中使用的任何数据.

猜你在找的Postgre SQL相关文章