यह तकनीकी रूप से एक उत्तर नहीं है, लेकिन चूंकि मैंने इसका विश्लेषण करने के लिए समय लिया है, इसलिए मैं इसे पोस्ट भी कर सकता हूं (हालांकि मुझे डाउन वोट किए जाने का जोखिम है)।
मेरे द्वारा वर्णित व्यवहार को पुन:पेश करने का कोई तरीका नहीं था।
यह है परिदृश्य:
declare @table table ([user id] int)
insert into @table values
(1),(1),(1),(1),(1),(1),(1),(2),(2),(2),(2),(2),(2),(null),(null)
और यहां कुछ प्रश्न और उनके परिणाम दिए गए हैं:
SELECT COUNT(User ID) FROM @table --error: this does not run
SELECT COUNT(dsitinct User ID) FROM @table --error: this does not run
SELECT COUNT([User ID]) FROM @table --result: 13 (nulls not counted)
SELECT COUNT(distinct [User ID]) FROM @table --result: 2 (nulls not counted)
और कुछ दिलचस्प:
SELECT user --result: 'dbo' in my sandbox DB
SELECT count(user) from @table --result: 15 (nulls are counted because user value
is not null)
SELECT count(distinct user) from @table --result: 1 (user is the same
value always)
मुझे यह बहुत अजीब लगता है कि आप प्रश्नों को ठीक उसी तरह से चलाने में सक्षम हैं जैसा आपने वर्णन किया है। अधिक सहायता प्राप्त करने के लिए आपको हमें तालिका संरचना और डेटा के बारे में बताना होगा।