Oracle
 sql >> Datenbank >  >> RDS >> Oracle

So schreiben Sie den Code in Oracle SQL (wie 'CCYYMMDD' in 102 )

Sie können keine Funktion schreiben, um zu bestimmen, welche numerische Datumszeichenfolge welchem ​​Format entspricht, da die Datumszeichenfolge mehrere Formate haben könnte:

Beispiel:010203 könnte sein:

  • Format 2:DDMMYY 1. Februar 03
  • Format 3:DDMMYY 2. Januar 03
  • Format 101:YYMMDD 3. Februar 01
  • Format 306:DDHHMM 02:03 von Tag 1
  • Format 402:HHMMSS 01:02:03
  • Format 405:MMMMSS 102 Minuten 3 Sekunden
  • Format 610:CCYYMM März 0102
  • Format 616:CCYYWW Woche 3 von 0102

Ebenso 10080102 könnte sein:

  • Format 4:DDMMCCYY 10. August 102
  • Format 102:CCYYMMDD 2. Januar 1008
  • Format 305:MMDDHHMM 8. Oktober 01:02
  • Format 501:HHMMHHMM Zeitspanne von 10:08 bis 01:01

Sie können nicht, wie ich oben beschrieben habe, ist es nicht eindeutig, was einige Werte sind, und sie könnten mehrere Formate zurückgeben. Stattdessen sollten Sie eine weitere Spalte erstellen und das Datumsformat darin speichern, wenn der Benutzer das Datum eingibt, anstatt zu versuchen, den Formatcode aus einer (mehrdeutigen) Zahl zu rekonstruieren.