私は7つの整数値(それぞれ3,1,3,4,4,5,4桁)を持っており、それらを1つの整数(つまり24桁の数字)に連結する必要があります。 。私はこのようにしようとしましたpostgresqlのconcat 2つのint値
create or replace function gen_id(int,int,int,int,int,int,int) returns bigint as $$
declare
id bigint;
begin
id = $1 * 1000000000000000000000 + $2 * 100000000000000000000 + $3 * 100000000000000000 + $4 * 10000000000000 + $5 * 1000000000 + $6 * 10000 + $7;
return id;
end;
$$ language plpgsql;
select * from gen_id(100,1,101,1000,1001,10001,1000);
しかし、私はそれを実行するとエラーが発生します:bigintは範囲外です。それを行うための他の良い方法はありますか?
おかげ
「連結」とは、(適切にキャストした後の)文字列の連結を意味しますか? –