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:
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  ;
Aufruf:
Code:
Select CvtChar2Date(YourDatum)
From yourTable;
Birgitta