এটি সামান্য কৌতুকপূর্ণ। ধরুন সারণীতে কেবল একটি কলাম রয়েছে, তারপরে গণনা (1) এবং গণনা (*) বিভিন্ন মান দেবে।
set nocount on
declare @table1 table (empid int)
insert @table1 values (1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(NULL),(11),(12),(NULL),(13),(14);
select * from @table1
select COUNT(1) as "COUNT(1)" from @table1
select COUNT(empid) "Count(empid)" from @table1
অনুসন্ধান ফলাফল
আপনি ছবিটিতে দেখতে পাচ্ছেন, প্রথম ফলাফলটি দেখায় যে টেবিলটিতে 16 টি সারি রয়েছে। যার মধ্যে দুটি সারি NULL। সুতরাং যখন আমরা ব্যবহার COUNT (*) ক্যোয়ারী ইঞ্জিন গন্য সারির সংখ্যা, তাই আমরা 16 যেমন কিন্তু ক্ষেত্রে গণনা ফলাফল পেয়েছি COUNT (empid) কলাম অ শূন্য মান গণনা করা হয়েছে empid । সুতরাং আমরা 14 হিসাবে ফলাফল পেয়েছি।
সুতরাং আমরা যখনই COUNT (কলাম) ব্যবহার করছি তখন নিশ্চিত হয়ে নিন যে আমরা নীচের মত বর্ণিত নালাগুলির যত্ন নিই।
select COUNT(isnull(empid,1)) from @table1
NULL এবং নন-নুল উভয় মান গণনা করবে।
দ্রষ্টব্য : টেবিলটি একাধিক কলামের তৈরি হয়ে গেলেও একই জিনিস প্রয়োগ হয়। গণনা (1) NULL / নন- NULL মান নির্বিশেষে মোট সারির সংখ্যা দেবে। কেবল যখন কলাম (কলাম) ব্যবহার করে কলামের মান গণনা করা হয় কেবল তখনই আমাদের NUL মানগুলির যত্ন নেওয়া দরকার।