加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

postgres输出结果格式化

(2013-08-12 09:50:56)
标签:

postgres

字段分隔符

it

分类: 技术

    有同事要求,把PG查询的输出结果的字段分隔符改一下,默认是以|做分隔的,但结果处理起来不是很方便,希望以逗号“,”做分隔符。

    开始觉得很简单,PSQL里有个\f选项,如下:

    \f [STRING]            show or set field separator for unaligned query output

    于是:

    psql=>\f ,

    Field separator is ",".

    再随便查个表

    ump=> select id,orderid,createtime from aaa limit 2;
    id          orderid               createtime        
-----------+----------------------+----------------------------
 285792149 | 11304010001441612377 | 2013-04-01 00:02:10.611901
 285792178 | 21304010003408492248 | 2013-04-01 00:04:07.152978

分隔符还是|,没变过来!!!这下有点郁闷了。看了资料还是不知道问题出在哪。后来问了下大牛德哥,知道了原因。

psql还有个选项:-A,如下:

man psql

-A, --no-align
           Switches to unaligned output mode. (The default output mode is otherwise aligned.)

通俗地说,就是结果输出不用上下对齐。

再试一下,

psql -A ump ump

psql=>\f ,

Field separator is ",".
ump=> select id,orderid,createtime from aaa limit 2;
id,orderid,createtime
285792149,11304010001441612377,2013-04-01 00:02:10.611901
285792178,21304010003408492248,2013-04-01 00:04:07.152978

这下OK了。

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有