今天遇到一个日期格式比较奇葩 13-9月-17 12.00.00.000000000 上午 数据库存在是这种格式,
查资料发现pgsql日期转换函数不支持这种格式,
转换思路:
按长度截取日和年
月份不好截取存在带有中文字,
月份截取先用split_part()第二个为月份再做替换,
replace(replace(split_part(lxrq,'-',2),'月',''),'月','')
具体月份长度有1或10这种长度,用case when判断下长度
具体如下:
date('20'||substr(lxrq,8,2)||case when replace(replace(split_part(lxrq,'-',2),'月',''),'月','')::NUMERIC