ধরা যাক আপনার একটি SELECT id from tableজিজ্ঞাসা রয়েছে (আসল কেসটি একটি জটিল প্রশ্ন) যা আপনাকে বেশ কয়েকটি ফলাফল দেয় return
সমস্যাটি কীভাবে সমস্ত idএকক সারিতে ফিরে আসবেন, কমা পৃথকী?
ধরা যাক আপনার একটি SELECT id from tableজিজ্ঞাসা রয়েছে (আসল কেসটি একটি জটিল প্রশ্ন) যা আপনাকে বেশ কয়েকটি ফলাফল দেয় return
সমস্যাটি কীভাবে সমস্ত idএকক সারিতে ফিরে আসবেন, কমা পৃথকী?
array_agg()ফাংশন।
উত্তর:
SELECT string_agg(id::text, ',') FROM table
PostgreSQL 9.0 প্রয়োজন তবে এটি কোনও সমস্যা নয়।
string_agg(CAST(id as varchar), ',')পরিবর্তে।
string_agg(id::text, ',')
select string_agg(id, ', ' order by id desc) from table
STRING_AGG(DISTINCT customer_name, ',')
আপনি আপনার ক্যোয়ারির সাথে অ্যারে () এবং অ্যারে_ টু স্ট্রিং () ফাংশন টোগেটর ব্যবহার করতে পারেন। আপনার সাথে SELECT array( SELECT id FROM table );যেমন একটি ফলাফল পাবেন: {1,2,3,4,5,6}
তারপরে, আপনি যদি}} চিহ্নগুলি সরিয়ে ফেলতে চান, আপনি কেবল অ্যারে_ টু স্ট্রিং () ফাংশনটি ব্যবহার করতে পারেন এবং বিভাজক হিসাবে কমা ব্যবহার করতে পারেন: সুতরাং SELECT array_to_string( array( SELECT id FROM table ), ',' ): 1,2,3,4,5,6 এর মতো ফলাফল পাবেন
SELECT array_to_string( id, ',' ) AS id FROM table
আপনি যে কোনও এসকিউএল কোয়েরি থেকে পিএসকিএল ব্যবহার করে একটি সিএসভি তৈরি করতে পারেন:
$ psql
> \o myfile.csv
> \f ','
> \a
> SELECT col1 AS column1, col2 AS column2 ... FROM ...
ফলস্বরূপ myfile.csv এর এসএসকিউ রেজাল্টসেট কলামের নাম সিএসভি কলাম শিরোনাম হিসাবে থাকবে এবং কোয়েরিটি সিএসভি সারি হিসাবে টিপল করবে।
জ / T http://pookey.co.uk/wordpress/archives/51-outputting-from-postgres-to-csv
এর জন্য অ্যারে_ টু_স্ট্রিং () ও অ্যারে () ফাংশনটি ব্যবহার করুন।
select array_to_string(array(select column_name from table_name where id=5), ', ');
string_agg()?
SELECT array_agg(id, ',') FROM table
{1,2,3,4}
আমি পোস্টগ্রাস 11 ব্যবহার করছি এবং সত্তা ফ্রেমওয়ার্ক এটিকে পূর্ণসংখ্যার অ্যারে হিসাবে আনছে।