【发布时间】:2016-07-27 04:08:01
【问题描述】:
我有一个包含生日属性的数据集。日期格式为M/D/YYYY(单个数字表示,例如 5/8/2009)并以文本格式存储。现在,我需要将列类型更改为日期。但是,有许多实体(不止可以手动修复)具有部分日期 - 即缺少日期或缺少日期和月份。例如:
"//1935"
"/5/1929"
"/4/1931"
现在,当我申请 to_date(birthdate,'DD/MM/YYYY') 时出现错误,因为 Postgresql 无法解析这些日期。我需要做的是用默认值填充缺失值。例如,"//1935" 和 "/5/1929" 应分别转换为 "1/1/1935" 和 "1/5/1929"。有没有快速解决这个问题的方法?或者,我是否需要编写正则表达式解析器?
【问题讨论】:
-
你需要一个解析器。如果以
//开头,或者以/[0-9]开头
标签: postgresql datetime missing-data to-date str-to-date