2012-03-20 61 views
2

我有以下PostgreSQL的查詢:PostgreSQL的TO_DATE查詢問題

INSERT INTO persoane_alocate(pa_id_pj,pa_id_corespondent_persoana,pa_procentaj,pa_tip_persoana,pa_data_inceput,pa_data_sfarsit,pa_afisare_in_monitor,audit_data_modificarii,audit_id_utilizator) VALUES ('670', '534', '0', '1', CASE 0000-00-00 WHEN 0 THEN NULL ELSE TO_DATE('30 Nov -0001', 'YYYY-MM-DD') END, CASE 2007-02-12 WHEN 0 THEN NULL ELSE TO_DATE('12 Feb 2007', 'YYYY-MM-DD') END, '2', '2012-03-20 17:11:34', 9999) 

而且我得到以下錯誤:

Query failed: ERROR: invalid value "Fe" for "MM" DETAIL: Value must be an integer. 

有關如何解決它的任何想法?

謝謝。

+2

你期望epxression'CASE 2007-02-12何時0'做什麼? – 2012-03-20 15:21:38

回答

5

您有:

to_date('12 Feb 2007', 'YYYY-MM-DD') 

代替:

to_date('12 Feb 2007', 'DD Mon YYYY') 

所以你嘗試使用錯誤的格式解析日期。見the reference

+0

對!謝謝。 – Psyche 2012-03-20 15:24:29