У меня есть 64-битное целочисленное поле в моей базе данных Postgres, которое заполнено 64-битными целыми числами. (Не) по совпадению, эти числа на самом деле являются 8-символьными строками в формате ASCII, с прямым порядком байтов. Например, число 5208208757389214273 является числовым представлением строки «ABCDEFGH»: это 0x4847464544434241 в шестнадцатеричном формате, где 0x41 - это A, 0x42 - это B, 0x43 - это C и т. Д.
Я хотел бы преобразовать эти числа исключительно для целей отображения - то есть найти способ оставить их как числа в базе данных, но иметь возможность видеть их как строки при запросах. Есть ли способ сделать это в SQL? Если не в SQL, могу ли я что-то сделать на стороне сервера (установить расширения, хранимые процедуры, что-нибудь вообще), что позволило бы это? Эту проблему легко решить с помощью любого сценария или языка программирования, но я не знаю, как решить ее с помощью SQL.
P.S. И просто еще один раз для некоторой связки, удовлетворяющей триггеру, с двойной ударов молотком - это не вопрос перевода числа, такого как 5208208757389214273, в строку «5208208757389214273» (у нас есть много ответов о том, как это сделать, но это не так что я ищу).