UNION দিয়ে দুটি কলামের মান একত্রিত করে ডুপ্লিকেট সরানো
MySQL-এ UNION অপারেটর দুটি SELECT স্টেটমেন্টের ফলাফল একত্রিত করে এবং স্বয়ংক্রিয়ভাবে ডুপ্লিকেট রো সরিয়ে দেয় (UNION ALL দিলে ডুপ্লিকেট থাকে)।
টেবিল ও ডেটা
mysql> CREATE TABLE DemoTable (Name1 VARCHAR(100), Name2 VARCHAR(100));
mysql> INSERT INTO DemoTable VALUES('Adam','Bob'), ('Adam','Bob'), ('David','Chris');
সব রেকর্ড
+-------+-------+ | Name1 | Name2 | +-------+-------+ | Adam | Bob | | Adam | Bob | | David | Chris | +-------+-------+
UNION কোয়েরি
mysql> SELECT Name1 FROM DemoTable UNION SELECT Name2 FROM DemoTable;
+-------+ | Name1 | +-------+ | Adam | | David | | Bob | | Chris | +-------+
ব্যাখ্যা
- প্রথম SELECT-এ
Name1, দ্বিতীয় SELECT-এName2নেওয়া হয়েছে। UNIONডুপ্লিকেট 'Adam' ও 'Bob' একবারই রেখেছে।- ফলাফল কলামের নাম প্রথম SELECT-এর কলাম নাম অনুযায়ী হয় (
Name1)।
UNION ALL (ডুপ্লিকেট রাখতে চাইলে)
SELECT Name1 FROM DemoTable UNION ALL SELECT Name2 FROM DemoTable;
ফলাফলে 'Adam', 'Adam', 'Bob', 'Bob', 'David', 'Chris' — সব থাকবে।