में दो दो मान मूल्यों को दोहराएं मेरे पास 7 पूर्णांक मान हैं (क्रमशः 3,1,3,4,4,5,4 अंकों के साथ) और मुझे उन्हें एक पूर्णांक (यानी 24 अंक संख्या) में जोड़ना होगा। । मैंने इसेपोस्टग्रेस्क्ल
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);
पर जब मैं इसे निष्पादित करता हूं तो मुझे त्रुटि मिलती है: सीमा से बाहर बड़ा। क्या ऐसा करने का कोई और बेहतर तरीका है?
धन्यवाद
"concatenation" द्वारा, क्या आप स्ट्रिंग concatenation (उचित कास्टिंग के बाद) का मतलब है? –