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

जब सबक्वेरी EXISTS के साथ पेश नहीं की जाती है तो चयन सूची में केवल एक अभिव्यक्ति निर्दिष्ट की जा सकती है

WHERE A_ID IN (subquery) में तुलना करने के लिए आप अपनी सबक्वेरी में दो (या एक से अधिक) कॉलम नहीं लौटा सकते। क्लॉज - A_ID . की तुलना किस कॉलम से करनी चाहिए को? आपकी सबक्वेरी को केवल वही कॉलम लौटाना चाहिए जो IN के दूसरी तरफ के कॉलम से तुलना करने के लिए आवश्यक है . तो क्वेरी इस रूप की होनी चाहिए:

SELECT * From ThisTable WHERE ThisColumn IN (SELECT ThatColumn FROM ThatTable)

आप सॉर्टिंग भी जोड़ना चाहते हैं ताकि आप केवल शीर्ष पंक्तियों से चयन कर सकें, लेकिन आपको अपना सॉर्ट करने के लिए COUNT को कॉलम के रूप में वापस करने की आवश्यकता नहीं है; ORDER . में छँटाई क्लॉज क्वेरी द्वारा लौटाए गए कॉलम से स्वतंत्र है।

कुछ इस तरह का प्रयास करें:

select count(distinct dNum) 
from myDB.dbo.AQ 
where A_ID in
    (SELECT DISTINCT TOP (0.1) PERCENT A_ID
    FROM myDB.dbo.AQ 
    WHERE M > 1 and B = 0
    GROUP BY A_ID 
    ORDER BY COUNT(DISTINCT dNum) DESC)


  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 सर्वर में MONEY या DECIMAL(x,y) डेटाटाइप चुनना चाहिए?

  2. SQL सर्वर प्रबंधन स्टूडियो में वास्तविक CSV प्रारूप में निर्यात आउटपुट कैसे प्राप्त करें?

  3. जावा से तालिका-मूल्यवान पैरामीटर के साथ संग्रहीत कार्यविधि को कॉल करें

  4. SSIS में मर्ज जॉइन और लुकअप ट्रांसफॉर्मेशन में क्या अंतर हैं?

  5. SQL सर्वर जॉब्स को एक SQL सर्वर इंस्टेंस से दूसरे में कैसे माइग्रेट करें