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

एसक्यूएल क्वेरी:मैं संख्या 1000 सीधे के साथ पंक्ति का डेटा कैसे प्राप्त कर सकता हूं?

row_number सबसे अच्छा तरीका है, लेकिन जैसा कि आप केवल एक ही पंक्ति चाहते हैं, योजना को देखना सुनिश्चित करें। वांछित पंक्ति की पहचान करना और फिर अतिरिक्त कॉलम प्राप्त करने के लिए मूल तालिका में वापस जुड़ना बेहतर हो सकता है।

WITH T1
     AS (SELECT *,
                ROW_NUMBER() OVER (ORDER BY number) AS RN
         FROM   master..spt_values)
SELECT name,
       number,
       type,
       low,
       high,
       status
FROM   T1
WHERE  RN = 1000;

देता है

WITH T2
     AS (SELECT number,
                type,
                name,
                ROW_NUMBER() OVER (ORDER BY number) AS RN
         FROM   master..spt_values)
SELECT TOP 1 C.name,
             C.number,
             C.type,
             C.low,
             C.high,
             C.status
FROM   T2
       CROSS APPLY (SELECT *
                    FROM   master..spt_values v
                    WHERE  v.number = T2.number
                           AND v.type = T2.type
                           AND ( v.name = T2.name
                                  OR ( v.name IS NULL
                                       AND T2.name IS NULL ) )) C
WHERE  RN = 1000;  

देता है



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. WHERE क्लॉज में किसी इनपुट का मूल्यांकन कैसे करें

  2. पीएचपी एसक्यूएल सर्वर आउटपुट पैरामीटर

  3. मैं SQL एजेंट कार्य में संग्रहीत कार्यविधि को कैसे निष्पादित करूं?

  4. SQL सर्वर में टेक्स्ट मान को UTF8 से ISO 8859-1 . में बदलें

  5. एंटिटी फ्रेमवर्क कोर काउंट का इष्टतम प्रदर्शन नहीं है