MySQL-এ কলাম মান কনক্যাটেনেট করা এবং NULL মান হ্যান্ডলিং
একাধিক কলাম বা স্ট্রিং একসাথে যোগ করতে CONCAT() ফাংশন এবং NULL মান হ্যান্ডেল করতে IFNULL() বা COALESCE() ফাংশন ব্যবহার করা হয়।
সিনট্যাক্স
SELECT CONCAT('Prefix: ', IFNULL(yourColumnName, 'Default Value')) AS AliasName FROM yourTableName;
উদাহরণ
টেবিল তৈরি
mysql> CREATE TABLE ConcatValues (
-> Id INT NOT NULL AUTO_INCREMENT,
-> FirstName VARCHAR(20),
-> MiddleName VARCHAR(20),
-> LastName VARCHAR(20),
-> PRIMARY KEY(Id)
-> );
ডেটা ইনসার্ট (MiddleName-এ NULL থাকবে)
mysql> INSERT INTO ConcatValues(FirstName, MiddleName, LastName) VALUES('John', NULL, 'Smith');
mysql> INSERT INTO ConcatValues(FirstName, MiddleName, LastName) VALUES('Carol', NULL, 'Taylor');
mysql> INSERT INTO ConcatValues(FirstName, MiddleName, LastName) VALUES('David', NULL, 'Miller');
সকল রেকর্ড দেখানো
mysql> SELECT * FROM ConcatValues;
আউটপুট
+----+-----------+------------+----------+ | Id | FirstName | MiddleName | LastName | +----+-----------+------------+----------+ | 1 | Mary | Elizabeth | Smith | | 2 | John | NULL | Smith | | 3 | Carol | NULL | Taylor | | 4 | David | NULL | Miller | +----+-----------+------------+----------+
NULL হ্যান্ডলিং করে কনক্যাটেনেট করা
mysql> SELECT CONCAT('The middle name is: ', IFNULL(MiddleName, 'Not Available')) AS MiddleName
-> FROM ConcatValues;
ফলাফল
+----------------------------------+ | MiddleName | +----------------------------------+ | The middle name is: Elizabeth | | The middle name is: Not Available| | The middle name is: Not Available| | The middle name is: Not Available| +----------------------------------+
বিকল্প: IFNULL(col, 'default') এর পরিবর্তে COALESCE(col, 'default') ও ব্যবহার করা যায়। COALESCE একাধিক আর্গুমেন্ট নিতে পারে এবং প্রথম non-NULL মানটি রিটার্ন করে।