character_varyingPostgreSQLデータベースの特定の列をタイプごとに変更したいのですがdate。日付は次の形式ですyyyy:mm:dd
私がやろうとした:
alter table table_name
alter column date_time type date using (date_time::text::date);
しかし、私はエラーメッセージを受け取りました:
日付/時刻フィールドの値が範囲外です: "2011:06:15"
character_varyingPostgreSQLデータベースの特定の列をタイプごとに変更したいのですがdate。日付は次の形式ですyyyy:mm:dd
私がやろうとした:
alter table table_name
alter column date_time type date using (date_time::text::date);
しかし、私はエラーメッセージを受け取りました:
日付/時刻フィールドの値が範囲外です: "2011:06:15"
textまたはvarcharにキャストするdateと、インストールのデフォルトの日付形式が期待されますdatestyle- postgresql.conf.
一般に、コロン ( :) は時間の区切り記号です。単純なキャストでは、PostgreSQL はおそらく '2011:06:15' を時間として解釈しようとし、失敗します。
あいまいさを取り除くto_date()には、日付の一致パターンを使用します。
ALTER TABLE table_name
ALTER COLUMN date_time type date
USING to_date(date_time, 'YYYY:MM:DD'); -- pattern for your example