我无法获得固定宽度的Insert Into语句以正确处理日期字段。我在这里发现了一些代码来创建一个“is_date”函数,但不知道如何让PostgreSQL pgAdminIII SQL Query窗口识别它。PostgreSQL:通过选择子字符串忽略/加载空日期
Error: function is_date(date) does not exist
我在另一篇文章发现在计算器上什么:
create or replace function is_date(s varchar) returns boolean as $$
begin
perform s::date;
return true;
exception when others then
return false;
end;
$$ language plpgsql;
我写的,有很多的帮助!
CREATE TABLE marc (statusdate date);
INSERT INTO marc (statusdate)
SELECT CASE
WHEN is_date(to_date(substring(data,228,60), 'DD/MON/YYYY')) = 1
THEN to_date(substring(data,228,60), 'DD/MON/YYYY')
ELSE NULL
END As statusdate
FROM marctemp;
任何人都可以告诉我我做错了什么?
有道理,谢谢。我是否要求在此跟进或编辑原文?现在获取新的/不同的错误。 –
如果您有新问题,请提出新问题。每次得到答案后都不要改变你最初的问题。您可以链接到新问题中的这个问题。 –
不,没有更多的错误,太快阅读你的文章。再次感谢你,这是非常有意义的,并按照设计工作。非常感谢,我对这一切都很新颖,每一项新任务都像是自己的研究项目。 –