Есть ли константа MAX_INT в Postgres?
В Java я могу сказать Integer.MAX_VALUE
, чтобы получить наибольшее число, которое может содержать тип int
.
Есть ли аналогичная константа/функция в Postgres? Я хотел бы избежать жесткого кодирования номера.
Изменить: причина, о которой я прошу, такова. Существует таблица устаревших версий с идентификатором типа integer
, поддерживаемая последовательностью. В эту таблицу входит много входящих строк. Я хочу рассчитать, сколько времени осталось до завершения integer
, поэтому мне нужно знать, "сколько идентификаторов осталось", деленное на "как быстро мы их тратим".
Ответы
Ответ 1
Нет констант для этого, но я думаю, что более разумно жестко закодировать число в Postgres, чем в Java.
В Java философская цель состоит в том, чтобы Integer
быть абстрактным значением, поэтому имеет смысл, что вы хотите вести себя так, как будто вы не знаете, что такое максимальное значение.
В Postgres вы гораздо ближе к голым металлам, и определение типа Integer
заключается в том, что оно 4-байтовое целое число со знаком.