注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

PostgreSQL 中文网

 
 
 

日志

 
 

PostgreSQL 9.4 : 返回结果集函数增加 WITH ORDINALITY 属性  

2014-05-21 14:22:39|  分类: Postgres基础 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

      当 from 语句后面的函数加上 WITH ORDINALITY 属性后,那么返回的结果集将增加一个整数列,这个整数列从 1 开始,并且按 1 递增,例如:
      
--1 例子

francs=# select * from generate_series(4,6) with ordinality;  
 generate_series | ordinality 
-----------------+------------
               4 |          1
               5 |          2
               6 |          3
(3 rows)

francs=# select * from pg_ls_dir('pg_log') with ordinality limit 3;
            pg_ls_dir             | ordinality 
----------------------------------+------------
 postgresql-2014-05-21_004931.csv |          1
 postgresql-2014-05-21_005605.csv |          2
 postgresql-2014-05-21_031005.csv |          3
(3 rows)

备注:新增的列名默认为 ordinality,也可以手工更改列名,如下:

--2 指定列名

francs=# select * from pg_ls_dir('pg_log') with ordinality as t(csvfile_name,num) limit 3;             
           csvfile_name           | num 
----------------------------------+-----
 postgresql-2014-05-21_004931.csv |   1
 postgresql-2014-05-21_005605.csv |   2
 postgresql-2014-05-21_031005.csv |   3
(3 rows)

备注: 文档上说这个属性对于返回结果集的函数特别有用,例如  unnest()。

--3 unnest()函数拆数组

francs=# select array[4,5,6,7];
   array   
-----------
 {4,5,6,7}
(1 row)

francs=# select * from unnest(array[4,5,6,7]) with ordinality;
 unnest | ordinality 
--------+------------
      4 |          1
      5 |          2
      6 |          3
      7 |          4
(4 rows)


--4 参考


  评论这张
 
阅读(798)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016