MySQL-এ UNION ব্যবহার করে একাধিক টেবিলের কলাম একত্রিত করে সর্ট করা
MySQL-এ UNION অপারেটর দুটি বা অধিক SELECT স্টেটমেন্টের ফলাফল একত্রিত করে। ডিফল্টভাবে UNION ডুপ্লিকেট মান সরিয়ে দেয় (UNION ALL ডুপ্লিকেট রাখে)। একত্রিত ফলাফলে ORDER BY ব্যবহার করে সর্ট করা যায়।
উদাহরণ
দুটি টেবিল তৈরি:
CREATE TABLE DemoTable1 (Amount INT);
INSERT INTO DemoTable1 VALUES (234), (567), (134);
CREATE TABLE DemoTable2 (Price INT);
INSERT INTO DemoTable2 VALUES (134), (775), (121), (882);
UNION এবং ORDER BY ব্যবহার
SELECT DISTINCT Amount FROM DemoTable1
UNION
SELECT DISTINCT Price FROM DemoTable2
ORDER BY Amount;
আউটপুট:
+--------+
| Amount |
+--------+
| 121 |
| 134 |
| 234 |
| 567 |
| 775 |
| 882 |
+--------+
গুরুত্বপূর্ণ নোট
ORDER BYসবসময়UNION-এর শেষে লিখতে হয় (প্যারেনথেসিস ছাড়া)।ORDER BY-এ কলাম নাম প্রথমSELECT-এর কলাম নাম বা এলিয়াস ব্যবহার করতে হয়।DISTINCTপ্রতিটিSELECT-এ ব্যবহার করা হয়েছে, তবেUNIONনিজে ডুপ্লিকেট সরিয়ে দেয়।
UNION vs UNION ALL
UNION: ডুপ্লিকেট সরিয়ে, সর্ট করে (ধীর)।UNION ALL: ডুপ্লিকেট রেখে, সর্ট করে না (দ্রুত)। পারফরম্যান্স криটিকাল কেসেUNION ALLব্যবহার করুন।