[PostgreSQL] Как привести строки в INT и другие типы данных?
Доброго времени суток уважаемые!
Есть база PostgreSQL, в одной из таблиц хранятся смешанные значения (т.е. могут быть как текст, так и цифры, так и что угодно ещё), формат поля - VARCHAR.
В некоторые моменты времени, необходимо выбрать все строки, в которых поле N, например, больше 3, например так: SELECT * FROM table1 WHERE field1 > 3;
Но, тут возникает проблема, т.к. field1 не всегда числовое. Я знаю, что в PostgreSQL есть приведения типов, и запрос должен был бы выглядеть примерно так:SELECT * FROM table1 WHERE field1::INTEGER > 3;
Но, как только приведение доходит до нечислового значения - вылетает с ошибкой, "ошибка синтаксиса".
Подскажите пожалуйста, как правильно составить запрос таким образом, что бы всё что можно было привести к нужному типу - автоматически приводилось бы, а всё что нельзя - просто пропускалось бы, без сравнения/приведения?