postgresql 部分函数整理

1.extract
    select extract(hour from '2016-05-06 23:00:01'::timestamp); --返回23
返回指定部分的值。

2.date_trunc
    select date_trunc('hour','2016-05-06 23:25:01'::timestamp); --返回 2016-05-06 23:00:00
返回时间串,但是将指定部分之后的内容格式话

3. coalesce(字段名,默认值)
    若字段为空 填充默认值。

3 age(timestamp ,timestamp )  或者 age(timestamp )
    age(timestamp '19650925')
    计算从19650925 到现在的时间 得到: "50 years 8 mons 20 days"

select to_char(age(timestamp '19650925'),'YYY') 得到年: "050"

cast('123' as integer); 转化为数值
     select cast(to_char(age(timestamp '19650925'),'YYY') as integer);     得到50;
    cast(timestamp as time ) 得到时分秒格式的时间  
    cast(timestamp as date )  得到年月日格式的时间

date_part('year',max(operate_time)-min(operate_time)) , 计算两个时间差 返回年

6 substring(string [from int] [for int] )

    select substring('123465789',2,3) ;  得到:234
    select substring('123465789', from 4) ;  得到:465789    
    select substring('123465789', from 4  for 2) ;  得到:46  

7    字符 串列转行函数  string_agg

8    字符 串行转列  regexp_split_to_table


9   generate_series(start,stop,[step]);   按不同的规则用来产生一系列的填充数据。

     postgres=# select generate_series(1,10,3);

     generate_series 
    -----------------
               1
               4
               7
              10
    (4 rows)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值