sql >> Database teknologi >  >> RDS >> Oracle

Oracle Få kun tid fra To_Date() i en forespørgsel?

TO_DATE('08:35:42 AM','HH:MI:SS PM')

Grunden til at dette ikke virker, er fordi dette ikke er en komplet dato. Selv når du bruger en to_date('07/12/2011','MM/DD/ÅÅÅÅ'), gemmer Oracle datoen og klokkeslættet, men gør alle tidens komponenter til NUL. Så den faktiske gemte dato er 07/12/2011 HH:MI:SS

Hvis du vil gemme tidskomponenten separat, skal det være et varchar-felt, og du bliver nødt til at tilføje det til datodelen for at få den komplette dato. Eksempel..

Select to_date(
          to_char(date_field_stored_as_date,'DD-MON-YYYY') || 
          ' ' ||
          to_char(time_field_stored_as_varchar),
         'DD-MON-YYYY HH24:MI:SS'    
       )


  1. Hvordan sammenligner man versionsstreng (x.y.z) i MySQL?

  2. CASE i MySQL tvinger kolonnedatatype til BIGINT i stedet for INT

  3. LOAD DATA INFIL:Ugyldig ut8mb4-tegnstreng

  4. Åbn SQL Developer fra kommandolinjen med parametre (forbindelsesstreng, bruger, adgangskode...)