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

SQL - पंक्तियों की संख्या के आधार पर लौटाई गई पंक्तियों की संख्या को सीमित करें

ROW_NUMBER() का उपयोग करें इसके लिए कार्य:

SELECT *
FROM (select *,ROW_NUMBER() OVER (PARTITION BY group_id ORDER BY item_id) as RowRank 
      from items_in_groups
      )sub
WHERE RowRank <=2

डेमो:SQL Fiddle

ROW_NUMBER() फ़ंक्शन प्रत्येक पंक्ति को एक संख्या निर्दिष्ट करता है। PARTITION BY वैकल्पिक है, लेकिन उस समूह में प्रत्येक मान के लिए नंबरिंग ओवर प्रारंभ करने के लिए उपयोग किया जाता है, अर्थात:यदि आप PARTITION BY group_id करते हैं फिर प्रत्येक अद्वितीय group_id . के लिए मान नंबरिंग 1 पर शुरू होगी। ORDER BY निश्चित रूप से यह परिभाषित करने के लिए प्रयोग किया जाता है कि गिनती कैसे होनी चाहिए, और ROW_NUMBER() में आवश्यक है समारोह।



  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 सर्वर (T-SQL) में समर्थित समय क्षेत्रों की सूची प्राप्त करें

  2. इकाई की रूपरेखा से SQL बिट स्तंभ अद्यतन कर रहा है

  3. SQL सर्वर संग्रहीत कार्यविधि में अल्पविराम से स्ट्रिंग को अलग (विभाजित) कैसे करें

  4. मॉडल एंटिटी फ्रेमवर्क कई-कई प्लस साझा संबंध

  5. SQL सर्वर में एक्ज़ीक्यूशन प्लान कैसे जेनरेट करें