Schreib' dir eine kleine SQL-Funktion, die das Datum konvertiert und bei fehlerhaften Datensätzen einen Unterlassungswert (z.B. 0001-01-01 oder 9999-12-31) ausgibt. Diese Funktion verwendest Du dann anstatt das Datum mit CAST zu konvertieren. Anschließend kannst Du die Unterlassungswerte rausfiltern.
Etwa so:
Aufruf:Code:Create Function YourSchema/CvtChar2Date (ParDate VarChar(10)) Returns DATE Language SQL Not Deterministic Contains SQL Set Option DBGVIEW = *SOURCE BEGIN Declare Continue Handler For SQLSTATE '22007' Return Date('9999-12-31'); Return Cast(ParDate as Date); END ;
BirgittaCode:Select CvtChar2Date(YourDatum) From yourTable;
![[NEWSboard IBMi Forum]](images/duke/nblogo.gif)



Mit Zitat antworten
Bookmarks