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

MySQL-এ একই ID 가진 রেকর্ডগুলোকে একটি সтрিংয়ে জোড়া দেওয়া

MySQL-এ একই UserId 가진 একাধিক রোকে একটি সেলে কমা বা অন্য সিপারেটর দিয়ে জোড়া দিতে GROUP_CONCAT() এবং CONCAT_WS() ফাংশনগুলো একসাথে ব্যবহার করা হয়।

টেবিল ও ডেটা

mysql> CREATE TABLE DemoTable2016 (
    -> UserId INT,
    -> UserName VARCHAR(20)
    -> ); 
Query OK, 0 rows affected (0.51 sec)

mysql> INSERT INTO DemoTable2016 VALUES (1, 'Chris');
mysql> INSERT INTO DemoTable2016 VALUES (2, 'Bob');
mysql> INSERT INTO DemoTable2016 VALUES (1, 'David');
mysql> INSERT INTO DemoTable2016 VALUES (2, 'Carol');
mysql> INSERT INTO DemoTable2016 VALUES (1, 'Sam');
mysql> SELECT * FROM DemoTable2016;
+--------+----------+
| UserId | UserName |
+--------+----------+
| 1      | Chris    |
| 2      | Bob      |
| 1      | David    |
| 2      | Carol    |
| 1      | Sam      |
+--------+----------+

জোড়া দেওয়ার কোয়ারি

mysql> SELECT GROUP_CONCAT(CONCAT_WS('-', UserName, UserId)) 
    -> FROM DemoTable2016 GROUP BY UserId;

আউটপুট

+----------------------------------------------+
| group_concat(concat_ws('-',UserName,UserId)) |
+----------------------------------------------+
| Chris-1,David-1,Sam-1                        |
| Bob-2,Carol-2                                |
+----------------------------------------------+

ব্যাখ্যা: CONCAT_WS('-', UserName, UserId) প্রতিটি রোয়ের নাম এবং IDকে হাইফন দিয়ে জোড়া দেয়। তারপর GROUP_CONCAT একই UserId 가진 সকল রোকে কমা দিয়ে একসাথে जोড়ে দেয়।

  1. MySQL-এ UNION ALL ব্যবহার করে একক কোয়েরিতে দুটি টেবিলে রেকর্ড ইনসার্ট করা

  2. একটি MySQL কোয়েরি দিয়ে শর্তানুসার রেকর্ডের জন্য ভিন্ন ID সেট করা

  3. MySQL-এ একাধিক কলাম একসাথে আপডেট করা (সিঙ্গল কুয়েরি)

  4. MySQL-এ IN() অপারেটর দিয়ে একক কোয়েরিতে একাধিক রেকর্ড ডিলিট করা