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

क्या ग्रुप बाय क्लॉज का उपयोग किए बिना एक चुनिंदा स्टेटमेंट में एग्रीगेट फ़ंक्शन का उपयोग करना संभव है?

सेलेक्ट क्लॉज के सभी कॉलम, जिनका एग्रीगेट नहीं है, उन्हें ग्रुप बाय में होना चाहिए

अच्छा:

SELECT col1, col2, col3, MAX(col4)
...
GROUP BY col1, col2, col3

यह भी अच्छा है:

SELECT col1, col2, col3, MAX(col4)
...
GROUP BY col1, col2, col3, col5, col6

कोई अन्य कॉलम नहीं =कोई GROUP BY की आवश्यकता नहीं है

SELECT MAX(col4)
...

काम नहीं करेगा:

SELECT col1, col2, col3, MAX(col4)
...
GROUP BY col1, col2

व्यर्थ:

SELECT col1, col2, col3, MAX(col4)
...
GROUP BY col1, col2, col3, MAX(col4)

GROUP BY के बिना अन्य स्तंभों के साथ कुल (MAX आदि) होने का कोई मतलब नहीं है क्योंकि क्वेरी अस्पष्ट हो जाती है।



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

  2. कैसे ठीक करें:"SQLServerAgent वर्तमान में नहीं चल रहा है ..."

  3. पदानुक्रमित डेटा की प्रतिलिपि बनाते समय अभिभावक-बाल संबंधों को सुरक्षित रखें

  4. डेटाबेस के प्रदर्शन को कैसे बढ़ाया जाए?

  5. SQL सर्वर में डुप्लिकेट पंक्तियाँ हटाएं