Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

गणना (*) शून्य लौटाता है

गिनती करने का प्रयास करते समय आपकी क्वेरी बाहरी जुड़ाव कर रही है। यदि B.UserId को NULL के रूप में सूचीबद्ध किया गया है, तो count(* ) NULL को भी वापस कर देगा। आप "गिनती (ए.*)" का उपयोग करके या इसे ISNULL() में लपेटकर स्पष्ट रूप से ए की गणना करके इसे ठीक कर सकते हैं।

select A.UserId, B.UserId, count(A.*)
  from select tableA A 
  left outer join tableB B
    on A.UserBNumber = B.Number
 group by A.UserId, B.UserId   

या

select A.UserId, B.UserId, isnull(count(*),0)
  from select tableA A 
  left outer join tableB B
    on A.UserBNumber = B.Number
 group by A.UserId, B.UserId   


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. sql सर्वर:उन पंक्तियों का चयन करें जिनका योग किसी मान से मेल खाता है

  2. SQL सर्वर में संग्रहीत कार्यविधि के लिए स्तंभ जानकारी लौटाएँ:sp_sproc_columns

  3. SQL सर्वर 2008 स्थापित, हालांकि चल रहा संस्करण अभी भी 2005 है

  4. sql सर्वर 2008 में newsequentialid () डिफ़ॉल्ट सेट करने में त्रुटि

  5. जांचें कि क्या कोई अस्थायी तालिका मौजूद है और अस्थायी तालिका बनाने से पहले उसे हटा दें