কম্পিউটার টিউটোরিয়াল

MySQL-এ GROUP_CONCAT() ব্যবহার করে গ্রুপ অনুযায়ী আইটেম এক সারিতে দেখান

GROUP_CONCAT() ফাংশন ব্যবহার

একই গ্রুপের একাধিক সারির মান কমা-বিভক্ত করে এক সারিতে দেখাতে GROUP_CONCAT() ফাংশন ব্যবহার করুন।

উদাহরণ: টেবিল ও ডেটা

mysql> CREATE TABLE DemoTable (
    ProductId INT,
    ProductName VARCHAR(40),
    ProductCategory VARCHAR(40)
);
mysql> INSERT INTO DemoTable VALUES(100,'Product-1','1Product');
mysql> INSERT INTO DemoTable VALUES(101,'Product-2','2Product');
mysql> INSERT INTO DemoTable VALUES(100,'Product-1','3Product');

সকল রেকর্ড:

+-----------+-------------+-----------------+
| ProductId | ProductName | ProductCategory |
+-----------+-------------+-----------------+
| 100       | Product-1   | 1Product        |
| 101       | Product-2   | 2Product        |
| 100       | Product-1   | 3Product        |
+-----------+-------------+-----------------+

গ্রুপ অনুযায়ী কমা-বিভক্ত তালিকা

mysql> SELECT ProductId, GROUP_CONCAT(ProductCategory) AS `GROUP` 
    FROM DemoTable GROUP BY ProductId;

ফলাফল:

+-----------+-------------------+
| ProductId | GROUP             |
+-----------+-------------------+
| 100       | 1Product,3Product |
| 101       | 2Product          |
+-----------+-------------------+

অপশনাল: GROUP_CONCAT(DISTINCT ProductCategory ORDER BY ProductCategory SEPARATOR ' | ') ব্যবহার করে ডুপ্লিকেট সরাতে, সর্ট করে এবং কাস্টম সেপারেটর দিতে পারেন। ডিফল্ট সীমা ১০২৪ বাইট; বড় করলে SET SESSION group_concat_max_len = 1000000; ব্যবহার করুন।

  1. MySQL-এ একটি কোয়েরি দিয়ে নির্দিষ্ট রেকর্ডের (ডুপ্লিকেট) আওতা গণনা করা

  2. MySQL-এ স্ট্রিং ফিল্ডের সংখ্যাসূচক অক্ষর দিয়ে সারি গোষ্ঠীকরণ করা

  3. MySQL-এ GROUP_CONCAT() ব্যবহার করে একাধিক রোকে একক স্ট্রিংয়ে জড়ানো (সিংগেল রো আউটপুট)

  4. MySQL ডেটাবেসের সব টেবিল লিস্ট করা