Мне нужно вставить некоторые данные из одной таблицы в другую в Postgresql. Схема таблицы, которую мне нужно заполнить данными, выглядит следующим образом:
create table public.test_int_table(
id int,
description text,
hash_code int
);
Проблема в том, что столбец id в другой таблице имеет тип bigint. Поэтому, когда я пытаюсь вставить битовые данные в столбец int, я получаю исключение:
insert into public.test_int_table
select * from public.test_table
SQL Error [22003]: ERROR: integer out of range
Как я могу обрезать данные bigint для вставки в Postgresql? Обычный оператор приведения, похоже, работает только для апскейтинга (от int до bigint и никак иначе) Если бы оно не было постоянно увеличивающимся значением, оно в большинстве случаев вписывается в int, так что я не очень хочу терять здесь точность.