যখনই আপনি একটি কলামের জন্য নাল না করার মতো সমস্ত মান চান তখন গণনা (*) ব্যবহার করুন। এটি count() পদ্ধতি ব্যবহার করার চেয়ে দ্রুত।
কাউন্ট(*) ব্যবহার করার জন্য সিনট্যাক্স নিম্নরূপ -
আপনার টেবিলের নাম থেকে যেকোন পরিবর্তনশীল নাম হিসাবে গণনা(*) নির্বাচন করুন;
উপরের ধারণাটি বোঝার জন্য প্রথমে একটি টেবিল তৈরি করা যাক। একটি টেবিল তৈরি করার প্রশ্নটি নিম্নরূপ -
mysql> টেবিল কাউন্টিংডেমো তৈরি করুন -> ( -> BookId int -> );কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.60 সেকেন্ড)
সন্নিবেশ কমান্ড ব্যবহার করে টেবিলে কিছু রেকর্ড সন্নিবেশ করান। প্রশ্নটি নিম্নরূপ -
mysql> CountingDemo values (100); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.13 সেকেন্ড)mysql> CountingDemo মানগুলিতে ঢোকান );কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.12 সেকেন্ড)mysql> CountingDemo মানগুলিতে ঢোকান(300); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.16 সেকেন্ড)mysql> কাউন্টিংডেমো মানগুলিতে ঢোকান(); কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.12 সেকেন্ড) )
সিলেক্ট স্টেটমেন্ট ব্যবহার করে টেবিল থেকে সমস্ত রেকর্ড প্রদর্শন করুন। প্রশ্নটি নিম্নরূপ -
mysql> CountingDemo থেকে *নির্বাচন করুন;
আউটপুট
<প্রে>+---------+| বুকআইডি |+---------+| 100 || NULL || 200 || 300 || NULL |+---------+5 সারি সেটে (0.00 সেকেন্ড)ধরুন আপনার কলামে শূন্য মান নেই তাহলে কাউন্ট(*) এবং কাউন্ট() একই ফলাফল দেয়।
কিন্তু আমাদের উদাহরণে BookId কলামে কিছু নাল মান রয়েছে। এই ক্ষেত্রে, গণনা(*) এবং গণনা() উভয়ই ভিন্ন ফলাফল দেয়।
এখানে একটি ক্যোয়ারী রয়েছে যা গণনা(*) -
ব্যবহার করেmysql> CountingDemo থেকে AllValue হিসাবে count(*) নির্বাচন করুন;
আউটপুট
<প্রে>+---------+| অল ভ্যালু |+---------+| 5 |+---------+1 সারি সেটে (0.00 সেকেন্ড)এটি এমন একটি ক্যোয়ারী যা গণনা() ব্যবহার করে এবং অন্য ফলাফল দেয় কারণ এটি নাল মান গণনাকে বিবেচনা করবে না। প্রশ্নটি নিম্নরূপ -
mysql> CountingDemo থেকে AllvalueWhichisNotnull হিসাবে গণনা (BookId) নির্বাচন করুন;