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

MySQL-এ টাইনি ইন্ট কলাম থেকে ০ এবং ১ এর সংখ্যা আলাদা দুটি কলামে দেখানো


SUM(condition) প্যাটার্ন দিয়ে বুলিয়ান গুননা

MySQL-এ বুলিয়ান এক্সপ্রেশন (যেমন isMarried = 1) TRUE হলে ১, FALSE হলে ০ রিটার্ন করে। SUM() দিয়ে এই ১/০ যোগ করলে TRUE/FALSE-এর সংখ্যা পাওয়া যায়।

টেবিল ও ডেটা

mysql> CREATE TABLE DemoTable (isMarried TINYINT(1));
mysql> INSERT INTO DemoTable VALUES(0), (1), (1), (0), (1), (1), (0);

সব রেকর্ড

+-----------+
| isMarried |
+-----------+
| 0         |
| 1         |
| 1         |
| 0         |
| 1         |
| 1         |
| 0         |
+-----------+

কোয়েরি: ১ ও ০ আলাদা কলামে গুননা

mysql> SELECT 
    SUM(tbl.isMarried = 1) AS all_one_count,
    SUM(tbl.isMarried = 0) AS all_zero_count,
    SUM(tbl.isMarried IN(0,1)) AS all_zero_count_and_one_count
FROM DemoTable tbl;
+---------------+----------------+------------------------------+
| all_one_count | all_zero_count | all_zero_count_and_one_count |
+---------------+----------------+------------------------------+
| 4             | 3              | 7                            |
+---------------+----------------+------------------------------+

ব্যাখ্যা

  • isMarried = 1 — TRUE (1) হলে ১, FALSE হলে ০।
  • SUM(...) — এই ১/০ যোগ করে TRUE-এর মোট সংখ্যা দেয়।
  • IN(0,1) — ০ বা ১ যেকোনো হলে ১, মোট রো সংখ্যা পাওয়া যায়।

বিকল্প: COUNT(CASE...)

SELECT 
  COUNT(CASE WHEN isMarried=1 THEN 1 END) AS ones,
  COUNT(CASE WHEN isMarried=0 THEN 1 END) AS zeros
FROM DemoTable;
  1. Java-এ JDBC ResultSetMetaData ব্যবহার করে MySQL টেবিলের কলাম সংখ্যা বের করা

  2. MySQL에서 중복 튜플 찾기와 개수 세기 (GROUP BY HAVING)

  3. MySQL-এ COUNT(*) এবং GROUP BY দিয়ে মানগুলোর পুনরাবৃত্তি গণনা করা

  4. MySQL-এ দুটি কলামের মোট মান গণনা করা (NULL বাদ দিয়ে)