MySQL-এ কোনো কলামে প্রতিটি ভিন্ন মান কতবার আসছে (frequency/occurrence) জানতে COUNT(*) এগরিগেট ফাংশন সাথে GROUP BY ব্যবহার করুন।
সিনট্যাক্স
SELECT `col`, COUNT(*) AS `count` FROM `table` GROUP BY `col`;
উদাহরণ: কার নামের ফ্রিকোয়েন্সি
CREATE TABLE `CountOccurrences` (
`CarId` INT NOT NULL AUTO_INCREMENT,
`CarName` VARCHAR(30),
PRIMARY KEY (`CarId`)
);
INSERT INTO `CountOccurrences` (`CarName`) VALUES
('Aston Martin'), ('BMW'), ('Aston Martin'), ('Honda'), ('BMW'),
('Audi'), ('Aston Martin'), ('Bugatti'), ('BMW'), ('Honda'), ('Audi'), ('BMW');
ঘটনার সংখ্যা গণনা
SELECT `CarName`, COUNT(*) AS `TotalCount`
FROM `CountOccurrences` GROUP BY `CarName`;
ফলাফল:
+--------------+------------+
| CarName | TotalCount |
+--------------+------------+
| Aston Martin | 3 |
| BMW | 4 |
| Honda | 2 |
| Audi | 2 |
| Bugatti | 1 |
+--------------+------------+
টিপস: বড় টেবিলে COUNT(*) দ্রুত কাজ করে (ইন্ডেক্স ব্যবহার করে)। COUNT(col) NULL বাদ দেয়, COUNT(*) সব রো গণনা করে।