sql >> Databáze >  >> RDS >> Oracle

Přeskočit znaky ve funkci Oracle TO_DATE

Můžete použít znak libry (# ) pro toto:

SELECT TO_DATE('2015-01-01 01:00:00.999', 'yyyy-mm-dd hh24:mi:ss.###') FROM dual;
--> 01/01/2015 01:00:00

Nenašel jsem to v dokumentaci , takže nemůžu říct proč, ale tyto také fungují:

SELECT TO_DATE('01_','hh24#') FROM dual;

SELECT TO_DATE('01:01:01.0xx','hh24:mi:ss.###') FROM dual;

Zdá se, že tyto nefungují:

SELECT TO_DATE('010','hh24#') FROM dual;

SELECT TO_DATE('01:01:01.xxx','hh24:mi:ss.###') FROM dual;

Zdá se, že to není zdokumentováno, ale zdá se, že jste schopni bez problémů zaměnit interpunkci:

SELECT TO_DATE('2015-01;01 11:12/13',
               'yyyy.mm,dd_hh-mi ss') FROM dual;
--> 01/01/2015 11:12:13

Můžete použít znakové literály, uzavřené v uvozovkách pokud víte, který text ignorovat:

SELECT TO_DATE('foo2015bar-01-!#%}01', '"foo"yyyy"bar"-mm-"!#%}"dd') FROM dual;
--> 01/01/2015


  1. Jak číst konfigurační parametr databáze pomocí souboru vlastností v režimu spánku

  2. java.lang.ClassNotFoundException:org.postgresql.Driver, Android

  3. SQL dotaz:Smazat záznam, který není přítomen v tabulce spojení?

  4. připojení k MySQL z příkazového řádku