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

MySQL-এ COALESCE() ফাংশন দিয়ে প্রথম নন-নাল মান দেখানো

COALESCE() ফাংশন আর্গুমেন্ট তালিকা থেকে **প্রথম নন-নাল (NOT NULL) মান** রিটার্ন করে। এটি একাধিক কলামে যেকোনো একটি মানের উপস্থিতি চেক করতে বা ফলব্যাক মান দিতে কাজে আসে।

টেবিল ও ডেটা তৈরি

mysql> CREATE TABLE DemoTable1927 (
    StudentName VARCHAR(20),
    StudentSubject VARCHAR(20)
);

mysql> INSERT INTO DemoTable1927 VALUES
    ('Chris', 'MySQL'),
    ('David', NULL),
    (NULL, 'MongoDB');

ডেটা যাচাই

mysql> SELECT * FROM DemoTable1927;
+-------------+----------------+
| StudentName | StudentSubject |
+-------------+----------------+
| Chris       | MySQL          |
| David       | NULL           |
| NULL        | MongoDB        |
+-------------+----------------+

COALESCE ব্যবহার

mysql> SELECT COALESCE(StudentName, StudentSubject) AS Result
    FROM DemoTable1927;

আউটপুট:

+---------+
| Result  |
+---------+
| Chris   |
| David   |
| MongoDB |
+---------+

ব্যাখ্যা

  • ১ম সারি: `StudentName` = 'Chris' (নন-নাল) → 'Chris' রিটার্ন।
  • ২য় সারি: `StudentName` = 'David' (নন-নাল) → 'David' রিটার্ন (StudentSubject NULL হলেও)।
  • ৩য় সারি: `StudentName` NULL, `StudentSubject` = 'MongoDB' → 'MongoDB' রিটার্ন।

COALESCE vs IFNULL vs IF

ব্যবহারিক উদাহরণ: ফলব্যাক চেইন

SELECT COALESCE(phone, email, 'No contact') AS contact_info FROM users;

ফোন নম্বর থাকলে ফোন, নাহলে ইমেইল, সেটাও নাই তবে 'No contact' দেখাবে।

  1. MySQL에서 IS NOT NULL로 NULL 제외하고 NOT NULL 값만 다른 테이블로 복사하기

  2. MySQL-এ IFNULL() দিয়ে NULL মানকে ১ এবং নন-নালকে ১ যোগ করে আপডেট করা

  3. MySQL-এ IN ক্লজ এবং ORDER BY FIELD ব্যবহার করে নির্দিষ্ট ক্রমে ডেটা বের করা

  4. Java-এ JDBC ResultSet ব্যবহার করে MySQL টেবিলের ডেটা দেখানো

কপিরাইট © https://bd.wsxdn.com সমস্ত অধিকার সংরক্ষিত
ফাংশনআর্গুমেন্ট সংখ্যাস্ট্যান্ডার্ডউদাহরণ
COALESCE২ বা অধিকANSI SQLCOALESCE(a, b, c, 'N/A')
IFNULLসঠিক ২MySQL-স্পেসিফিকIFNULL(a, 'N/A')
IF৩ (condition, true, false)MySQL-স্পেসিফিকIF(a IS NULL, 'N/A', a)