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

काउंट (*) चुनें;

आम तौर पर सभी चयन फॉर्म के होते हैं SELECT [columns, scalar computations on columns, grouped computations on columns, or scalar computations] FROM [table or joins of tables, etc]

क्योंकि यह सादा अदिश संगणना की अनुमति देता है, हम कुछ ऐसा कर सकते हैं जैसे SELECT 1 + 1 FROM SomeTable और यह तालिका में प्रत्येक पंक्ति के लिए मान 2 के साथ एक रिकॉर्डसेट लौटाएगा SomeTable

अब, अगर हमें किसी तालिका की परवाह नहीं है, लेकिन हम अपने स्केलर की गणना करना चाहते हैं, तो हम कुछ ऐसा करना चाहेंगे जैसे SELECT 1 + 1 . मानक द्वारा इसकी अनुमति नहीं है, लेकिन यह उपयोगी है और अधिकांश डेटाबेस इसकी अनुमति देते हैं (ओरेकल तब तक नहीं करता जब तक कि इसे हाल ही में नहीं बदला गया है, कम से कम यह नहीं हुआ करता था)।

इसलिए इस तरह के नंगे चयनों को माना जाता है जैसे कि उनके पास एक खंड था जिसमें एक पंक्ति और कोई कॉलम वाली तालिका निर्दिष्ट नहीं थी (बेशक असंभव, लेकिन यह चाल है)। इसलिए SELECT 1 + 1 हो जाता है SELECT 1 + 1 FROM ImaginaryTableWithOneRow जो 2 . के मान के साथ एकल कॉलम वाली एक पंक्ति लौटाता है ।

अधिकतर हम इसके बारे में नहीं सोचते हैं, हम बस इस तथ्य के अभ्यस्त हो जाते हैं कि नंगे चयन परिणाम देते हैं और इस तथ्य के बारे में भी नहीं सोचते कि एक पंक्ति को वापस करने के लिए कुछ एक-पंक्ति वाली चीज़ का चयन किया जाना चाहिए।

SELECT COUNT(*) करने में आपने SELECT COUNT(*) FROM ImaginaryTableWithOneRow . के बराबर किया है जो निश्चित रूप से 1 लौटाता है।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MSSQL रिकॉर्ड दिनांक/समय स्वतः हटाएं

  2. क्या MS-SQL AND/OR सशर्त है (शॉर्ट-सर्किट मूल्यांकन करें)?

  3. तीन कॉलम SQL PIVOT

  4. SQL ट्रिगर DELETE के बजाय नहीं कर सकता है लेकिन ntext, छवि कॉलम के लिए आवश्यक है

  5. SQL सर्वर इंडेक्स बैकवर्ड स्कैन:अंडरस्टैंडिंग, ट्यूनिंग