PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как да конвертирате низове от дата в клеймо за време, без да знаете формата на датата

Трябва да зададете вашия стил на дата на "ISO, DMY". По подразбиране е зададено на "ISO, MDY" и би довело до неуспех на вашия пример:

> 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)

(примери, направени в PostgreSQL 9.1, но настройката на DateStyle и свързаното поведение са древни, така че трябва да работят добре)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да върна обикновена стойност от заявка на Knex / Postgresql?

  2. Postgres - Преобразувайте списъка на съседство във вложен JSON обект

  3. стойността е твърде дълга за type character varying(100)----наскоро превключена база данни, не направи нищо в db

  4. SQLAlchemy - SQLite за тестване и Postgresql за разработка - Как да пренасям?

  5. Създаване на таблица за стойности на многоъгълник в Postgis и вмъкване