Стандартный приём в этой ситуации — превращаете такие значения, которые не могут быть правильно обработаны тем, что выдаёт ошибку (в Вашем случае — CAST-ом), в NULL-ы. Т.е. что-то вроде: CAST((CASE WHEN d ~ '^\d+$' THEN d END) AS integer)
Обсуждают сегодня