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

MySQL-এ COUNT(DISTINCT) ব্যবহার করে ডুপ্লিকেট বাদ দিয়ে ইউনিক রো গণনা করুন

COUNT(DISTINCT column) সিনট্যাক্স

কলামে ডুপ্লিকেট মান বাদ দিয়ে শুধু ইউনিক মানগুলো গণনা করতে COUNT(DISTINCT column_name) ব্যবহার করুন।

সিনট্যাক্স:

SELECT COUNT(DISTINCT yourColumnName) FROM yourTableName;

উদাহরণ: টেবিল ও ডুপ্লিকেট ডেটা

mysql> CREATE TABLE DemoTable (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    FirstName VARCHAR(10)
);
mysql> INSERT INTO DemoTable(FirstName) VALUES
    ('Larry'),('John'),('Sam'),('John'),('John'),('Larry'),('Mike'),('Robert'),('Carol'),('Mike');

সকল রেকর্ড (ডুপ্লিকেট সহ):

+----+-----------+
| Id | FirstName |
+----+-----------+
| 1  | Larry     |
| 2  | John      |
| 3  | Sam       |
| 4  | John      |
| 5  | John      |
| 6  | Larry     |
| 7  | Mike      |
| 8  | Robert    |
| 9  | Carol     |
| 10 | Mike      |
+----+-----------+

ইউনিক নামের সংখ্যা গণনা করুন

mysql> SELECT COUNT(DISTINCT FirstName) FROM DemoTable;

ফলাফল:

+---------------------------+
| count(distinct FirstName) |
+---------------------------+
| 6                         |
+---------------------------+

ব্যাখ্যা: ইউনিক নামগুলো: Larry, John, Sam, Mike, Robert, Carol = ৬টি। COUNT(*) দিয়ে ১০, COUNT(FirstName) দিয়ে ১০ (NULL বাদে), COUNT(DISTINCT FirstName) দিয়ে ৬।

  1. MySQL কোয়ারি: টেবিল কলামে ডুপ্লিকেট মানের সংখ্যা গণনা করা

  2. MySQL INSERT-এ ডুপ্লিকেট সারি প্রতিরোধ করা

  3. MySQL-এ কম্পোজিট কী (Composite Key) দিয়ে ডুপ্লিকেট সারি খুঁজে বের করা

  4. MySQL-এ একাধিক টেবিল থেকে COUNT(*) একসাথে বের করা (DUAL টেবিল ব্যবহার করে)