sql >> Database teknologi >  >> RDS >> PostgreSQL

Sådan konverteres datostrenge til tidsstempel uden at kende datoformatet

Du skal indstille din datestil til "ISO, DMY". Det er indstillet til "ISO, MDY" som standard og vil få dit eksempel til at mislykkes:

> show datestyle;

 DateStyle 
-----------
 ISO, MDY
(1 row)

> select '28-Sep-13'::date;
    date    
------------
 2013-09-28
(1 row)

> select '28/09/2013'::date;
ERROR:  date/time field value out of range: "28/09/2013"
LINE 1: select '28/09/2013'::date;
               ^
HINT:  Perhaps you need a different "datestyle" setting.

> set datestyle = 'ISO, DMY';
SET

> select '28-Sep-13'::date;
    date    
------------
 2013-09-28
(1 row)

> select '28/09/2013'::date;
    date    
------------
 2013-09-28
(1 row)

(eksempler udført i PostgreSQL 9.1, men DateStyle-indstillingen og tilhørende adfærd er ældgamle, så det burde fungere fint)



  1. Mysql Duplicate Rows (Duplikat fundet ved hjælp af 2 kolonner)

  2. TSQL - Er det muligt at definere sorteringsrækkefølgen?

  3. Sådan ændres mysql-databasemappe på WAMP

  4. Vælg mellem mange-til-mange forhold efterfølger