我有一张包含几位欧洲君主的出生和死亡的表格,该表格没有年龄列,我必须添加它。还有几个空值和“无”值,在这种情况下,年龄列应该显示未知。
以下代码给了我一个invalid input syntax for type double precision
错误。
SELECT CASE
WHEN date_part('year', age(TO_TIMESTAMP(death, 'YYYY-MM-DD'), TO_TIMESTAMP(birth, 'YYYY-MM-DD'))) = 'None' OR death ISNULL
THEN 'Unknown'
ELSE
date_part('year', age(TO_TIMESTAMP(death, 'YYYY-MM-DD'), TO_TIMESTAMP(birth, 'YYYY-MM-DD')))
END
从君主时代开始
postgresql 没有 datediff 函数。非常感谢。
编辑
出生和死亡列是 varchars 并具有这种格式0208-10-01T00:53:28+00:53