to_json (1):: text:: int возможно слишком медленно
Но тогда это единственный способ.
Вторая часть вашего вопроса неясна.
Ответ 3
Поддержка PostgreSQL 9.3 JSON - это просто проверенный текст json.
В 9.4 и новее вы можете использовать jsonb.
"может быть слишком медленным" не делает тонны смысла. Что заставляет вас думать слишком медленно? Вы тестировали и оценивали? Если он "слишком медленный", какая скорость не будет слишком медленной, то есть что вы ожидаете?