我有MOD17A1.A2002047.h20v09.058.2007117021342.hdf
存储在我的数据库中的文件。我有一列文件名是这样的(列的名称是_filename_
)。2002047
在文件名中表示 2002 年的第 47 天。我必须将日期格式的日期提取2002-02-16
到每个文件名的单独列中。
我想出了这个解决方案:
with S as (
select (select substring(filename from 10 for 4) || (select hiph)
|| (select substring(filename from 14 for 3))) as D
,mytable.rid as s_rid from mytable)
update mytable
set date_column = (select (to_date(d , 'IYYY-IDDD')')::date)
from S
where id=s_id
这个解决方案的唯一问题是我需要一个_hiph_
所有值都是'-'
. 有没有办法在没有此_hiph_
列的情况下在 postgresql 中运行此命令?或者任何替代解决方案?