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

MySQL-এ একক কুয়েরিতে একাধিক টেবিলের সারি গণনার যোগফল বের করা

UNION ALL ও সাবকুয়েরি ব্যবহার

একাধিক টেবিলের COUNT(*) এর যোগফল বের করতে প্রতিটি টেবিল থেকে গণনা করে UNION ALL দিয়ে একত্রিত করুন, তারপর বাইরের কুয়েরিতে SUM() নিন।

উদাহরণ

mysql> CREATE TABLE DemoTable1 (Id INT, Name VARCHAR(30));
mysql> INSERT INTO DemoTable1 VALUES (10, 'Chris Brown'), (20, 'David Miller'), (30, 'John Adam');

mysql> CREATE TABLE DemoTable2 (Amount INT);
mysql> INSERT INTO DemoTable2 VALUES (100), (200), (300);

কুয়েরি: মোট সারি সংখ্যা

mysql> SELECT SUM(AllCount) AS Total_Count
FROM (
    (SELECT COUNT(*) AS AllCount FROM DemoTable1)
    UNION ALL
    (SELECT COUNT(*) AS AllCount FROM DemoTable2)
) t;

ফলাফল

+-------------+
| Total_Count |
+-------------+
| 6           |
+-------------+

ব্যাখ্যা: UNION ALL ডুপ্লিকেট অপসারণ ছাড়া সব সারি একত্রিত করে (এখানে প্রতিটি সাবকুয়েরি ১ সারি ফেরত দেয়)। UNION ব্যবহার করলে ডুপ্লিকেট গুলো মুছে ফেলা হতো, যা এখানে দরকার নয়।

  1. MySQL-এ একটি কোয়েরি দিয়ে দুটি টেবিল থেকে ডেটা নির্বাচন করা

  2. MySQL-এ WHERE শর্ত সহ SUM() ব্যবহার করে নির্দিষ্ট সেলগুলোর যোগফল বের করা

  3. MySQL-এ একাধিক টেবিল থেকে NOT NULL মান গণনা করা (সিঙ্গেল কোয়েরি)

  4. MySQL-এ কমা-সেপারেটেড স্ট্রিং থেকে নির্দিষ্ট পজিশনের মান বের করা (SUBSTRING_INDEX)