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

SQL सर्वर पर पेजिनेशन करने का सबसे अच्छा तरीका कौन सा है?

ALTER PROCEDURE [dbo].[SP_tblTest_SelectSpecificRecordsWithCTE]
    @FromRow int = 1000000,
    @PgSize int = 10
AS
BEGIN
    ;WITH RecordsRN AS
    (
        select ID, colValue, ROW_NUMBER() over(order by colvalue) as Num from tblTest
    )
    SELECT ID Value, colValue Text FROM RecordsRN WHERE Num between @FromRow AND (@[email protected])
END

यही वह प्रश्न है जिसका मैं पेजिंग के लिए उपयोग कर रहा हूं। इसका उपयोग करें और आप 4-5 सेकंड में अपने वांछित 10 रिकॉर्ड प्राप्त कर लेंगे। मुझे 3 सेकंड में 10 रिकॉर्ड मिल रहे हैं और मेरे डीबी में कुल रिकॉर्ड 10 मिलियन हैं, शीर्ष 10 का उपयोग न करें, यह हर बार केवल 10 रिकॉर्ड ही लाएगा। मेरे मामले में मैं सत्र में पृष्ठ आकार और पंक्ति संख्या (@FromRow) शुरू कर रहा हूं और मैं इन दो मानों को नीचे दी गई संग्रहीत प्रक्रिया में पास करता हूं और परिणाम प्राप्त करता हूं। इसके अलावा यदि आप SQL 2012 का उपयोग कर रहे हैं तो आप OFFSET का उपयोग करना चाहेंगे और अगली 10 पंक्तियों की तरह की चीज़ प्राप्त करें। Google पर OFFSET कीवर्ड के बारे में खोजें और आप अपना वांछित परिणाम शीर्ष पर देखेंगे।

धन्यवाद



  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 सर्वर 2017 प्रबंधन उपकरण

  2. SQL सर्वर में दशमलव स्थानों को छोटा करें (गोल नहीं)

  3. क्या SQL सर्वर में DECIMAL और NUMERIC के बीच कोई अंतर है?

  4. दिनांक के अनुसार आदेश पहले NULLS दिखा रहा है फिर सबसे हाल की तिथियां

  5. कीवर्ड समर्थित नहीं:'सर्वर'