MySQL-এ COUNT(*) বনাম COUNT(columnName) - পার্থক্য বোঝা
COUNT(*) টেবিলের মোট রো সংখ্যা গুনে (NULL সহ)। COUNT(columnName) শুধু সেটি কলামে NULL নন রো গুনে।
পার্থক্য সারসংক্ষেপ
| ফাংশন | গুনে | NULL হ্যান্ডলিং |
|---|---|---|
| COUNT(*) | সব রো | NULL রও গুনে |
| COUNT(col) | Non-NULL মান | NULL রো বাদ দেয় |
উদাহরণ সহ ব্যাখ্যা
টেবিল তৈরি ও ডেটা (NULL, খালি স্ট্রিং, ০ সহ):
mysql> CREATE TABLE ifNotNullDemo (Name VARCHAR(20));
mysql> INSERT INTO ifNotNullDemo VALUES('Chris'), (''), ('Robert'), (NULL), (0);
ডেটা:
mysql> SELECT * FROM ifNotNullDemo;
+--------+ | Name | +--------+ | Chris | | | -- খালি স্ট্রিং (NOT NULL) | Robert | | NULL | -- NULL | 0 | -- স্ট্রিং '০' (NOT NULL) +--------+
COUNT(*):
mysql> SELECT COUNT(*) FROM ifNotNullDemo;
+----------+ | COUNT(*) | +----------+ | 5 | +----------+
COUNT(Name):
mysql> SELECT COUNT(Name) FROM ifNotNullDemo;
+-------------+ | COUNT(Name) | +-------------+ | 4 | +-------------+
ব্যাখ্যা: ৫টি রো মোট। NULL একটা বাদে ৪টি Non-NULL। খালি স্ট্রিং '' এবং '০' হলো Non-NULL মান।