Hard to say. may a CASE expression with a LIKE comparison?DECLARE @Foo TABLE (Val VARCHAR(50))INSERT @Foo (Val)VALUES ('12-10-08 NO FORMER-'), ('06-01-10efffective-'), ('12-10-2011 NO FORMER-'), ('06-01-2009efffective-'), ('06-01-efffective-')SELECT CASE WHEN Val LIKE '[0-9][0-9]-[0-9][0-9]-[0-9][0-9][0-9][0-9]%' THEN LEFT(Val, 10) WHEN Val LIKE '[0-9][0-9]-[0-9][0-9]-[0-9][0-9]%' THEN LEFT(Val, 8) ELSE NULL END AS NewValFROM @FooIf you have more specific data samples you can provide that might help too.