मुख्य सामग्री पर जाएं

SQL OFFSET का उपयोग कैसे करें

SQL OFFSET क्लॉज़ में महारत हासिल करें। ORDER BY और LIMIT का उपयोग करके स्थिति के आधार पर मान लौटाने का तरीका जानें, व्यावहारिक उदाहरणों सहित, जैसे वेब अनुप्रयोगों के लिए डेटा पेजिनेशन।
अपडेट किया गया 25 सित॰ 2026  · 10 मि॰ पढ़ें

AI के साथ खोजें

ChatGPTClaudePerplexity

SQL OFFSET एक शक्तिशाली क्लॉज़ है जिसका उपयोग क्वेरी परिणाम में एक निश्चित संख्या की पंक्तियों को छोड़ने के लिए किया जाता है। इसे अक्सर डेटा पेजिनेशन के लिए LIMIT क्लॉज़ के साथ जोड़ा जाता है।

यह ट्यूटोरियल बताता है कि OFFSET कैसे काम करता है, इसके व्यावहारिक उपयोग क्या हैं, और अपनी SQL क्वेरियों को अनुकूलित करने के सर्वोत्तम तरीके क्या हैं। यदि आप शुरू करने से पहले SQL ऑपरेशंस की पुनरावृत्ति करना चाहते हैं, तो हमारे SQL बेसिक्स चीट शीट पर एक त्वरित नज़र डालें।

त्वरित उत्तर: SQL OFFSET का उपयोग कैसे करें

SQL में OFFSET क्लॉज़ का उपयोग परिणाम सेट में पंक्तियाँ लौटाने से पहले एक निश्चित संख्या की पंक्तियों को छोड़ने के लिए किया जाता है। इसे अक्सर परिणामों को पेजिनेट करने के लिए LIMIT क्लॉज़ के साथ उपयोग किया जाता है।

SELECT column_names
FROM table_name
ORDER BY column_name
LIMIT number_of_rows OFFSET offset_value;

ऊपर दी गई SQL क्वेरी में, number_of_rows लौटाई जाने वाली पंक्तियों की सटीक संख्या दर्शाता है, जबकि offset_value दिखाता है कि पंक्तियाँ लौटाने से पहले क्वेरी को कितनी पंक्तियाँ छोड़नी चाहिए। 

OFFSET कैसे काम करता है

OFFSET क्लॉज़ परिणाम सेट में निर्दिष्ट संख्या की पंक्तियों को छोड़ देता है। जब ORDER BY के साथ उपयोग किया जाता है, तो यह परिभाषित क्रम में पंक्तियों को छोड़कर सुसंगत परिणाम सुनिश्चित करता है, जो आमतौर पर किसी कॉलम नाम द्वारा निर्दिष्ट होता है। डिफ़ॉल्ट रूप से, ORDER BY निर्दिष्ट कॉलम को आरोही क्रम में लौटाता है।

मान लीजिए कि आप employees तालिका से निम्न कॉलम क्वेरी करना चाहते हैं: employee_id, first_name, last_name, phone_number, और salary। आप अपने परिणामों से पहली 9 पंक्तियों को भी निकालना चाहते हैं। आप नीचे दी गई SQL क्वेरी का उपयोग करेंगे।

-- Select all columns for employees, starting from the 10th row
SELECT employee_id, first_name, last_name, phone_number, salary
FROM employees
-- Order by employee_id to ensure consistent ordering
ORDER BY employee_id
-- Skip the first 9 rows
OFFSET 9 ROWS;

यह याद रखना महत्वपूर्ण है कि गैर-अद्वितीय सॉर्टिंग कॉलम के कारण, डुप्लिकेट रिकॉर्ड से बचने के लिए सावधानी बरतनी चाहिए।

LIMIT और OFFSET का संयोजन

OFFSET का आम तौर पर LIMIT के साथ उपयोग किया जाता है ताकि लौटाई जाने वाली पंक्तियों की संख्या और पंक्तियाँ लौटाना कहाँ से शुरू करना है, उस पर नियंत्रण रखा जा सके। 

नीचे दिए गए उदाहरण में, LIMIT क्लॉज़ पहली 9 पंक्तियाँ छोड़ने के बाद केवल अगली 10 पंक्तियाँ लौटाता है।

-- Select all columns for employees, starting from the 10th row and fetching the next 10 rows
SELECT employee_id, first_name, last_name, phone_number, salary
FROM employees
-- Order by employee_id to ensure consistent ordering
ORDER BY employee_id
-- Skip the first 9 rows
OFFSET 9
-- Fetch the next 10 rows
LIMIT 10;

OFFSET के व्यावहारिक उपयोग

SQL OFFSET का वेब अनुप्रयोगों में पेजिनेशन के लिए व्यापक रूप से उपयोग किया जाता है। स्पष्ट रूप से कहें तो, डेटा पेजिनेशन बड़ी मात्रा के डेटा को छोटे-छोटे हिस्सों में बाँटने की तकनीक है, जो उपयोगकर्ताओं को बड़े डेटासेट में कुशलतापूर्वक नेविगेट करने में मदद करती है। 

मैं डेटा पेजिनेशन को OFFSET और LIMIT के उपयोग का सबसे अच्छा उदाहरण मानता हूँ। इस तकनीक में, OFFSET और LIMIT क्लॉज़ एक साथ उपयोग होकर डेटा को प्रबंधनीय हिस्सों में बाँटते हैं, जो कई पन्नों में दिखाए जाते हैं।  

यह उपयोगकर्ता अनुभव को बेहतर बनाता है क्योंकि कोई भी एक साथ बहुत बड़ी सूची देखकर अभिभूत नहीं होता। 

OFFSET के अन्य उपयोगों में शामिल हैं:

  1. डेटा का विश्लेषण करते समय निर्दिष्ट रिकॉर्ड्स को छोड़ना।
  2. डेटा को हिस्सों में निर्यात के लिए तैयार करना (LIMIT के साथ मिलाकर उपयोग करने पर)।
  3. जब आपको पता हो कि आप क्या ढूँढ़ रहे हैं, तो किसी विशेष रेंज के डेटा पर ही फोकस करना। 

डेटाबेस-विशिष्ट समर्थन और विकल्प

विभिन्न डेटाबेस OFFSET और LIMIT क्लॉज़ का समर्थन करते हैं, जिनमें MySQL, PostgreSQL और SQLite शामिल हैं। ऐसे डेटाबेस के लिए जो OFFSET और LIMIT स्टेटमेंट्स का समर्थन नहीं करते, जैसे SQL Server, FETCH जैसे वैकल्पिक तरीकों का उपयोग किया जा सकता है।

उदाहरण के लिए, नीचे दी गई क्वेरी (LIMIT का उपयोग करते हुए) MySQL, SQLite और PostgreSQL डेटाबेस में मान लौटाएगी लेकिन SQL Server में नहीं।

-- Select all columns for employees, starting from the 10th row and fetching the next 10 rows
SELECT employee_id, first_name, last_name, phone_number, salary
FROM employees
-- Order by employee_id to ensure consistent ordering
ORDER BY employee_id
-- Skip the first 9 rows
OFFSET 9
-- Fetch the next 10 rows
LIMIT 10;

इसलिए, आपको SQL Server में समान परिणाम लौटाने के लिए नीचे दी गई क्वेरी के साथ FETCH का उपयोग करना चाहिए;

-- Select specific columns for employees, starting from the 10th row and fetching the next 10 rows
SELECT employee_id, first_name, last_name, phone_number, salary
FROM employees
-- Order by employee_id to ensure consistent ordering
ORDER BY employee_id 
-- Skip the first 9 rows (starting from the 10th row)
OFFSET 9 ROWS 
 -- Fetch the next 10 rows
FETCH NEXT 10 ROWS ONLY;

उन्नत तकनीकें: OFFSET और FETCH

SQL मानक में उपयोग किया जाने वाला FETCH क्लॉज़, LIMIT का एक उन्नत विकल्प हो सकता है। जहाँ OFFSET छोड़ने वाली पंक्तियों की संख्या बताता है, वहीं FETCH क्वेरी से लौटाई जाने वाली पंक्तियों की संख्या देता है।

-- Selecting columns from employees table
SELECT employee_id, first_name, last_name, phone_number, salary
FROM employees
-- Ordering the result set by employee_id for consistent pagination
ORDER BY employee_id
-- Skipping the first 20 rows in the result set
OFFSET 20 ROWS
-- Fetching the next 10 rows only after the offset
FETCH NEXT 10 ROWS ONLY;

अन्य उन्नत SQL तकनीकें हमारे Associate Data Analyst in SQL कोर्स में मिलती हैं।

प्रदर्शन संबंधी विचार और अन्य सर्वोत्तम प्रथाएँ 

OFFSET का प्रभावी उपयोग करने के लिए इसकी क्वेरी प्रदर्शन पर पड़ने वाले प्रभाव को समझना आवश्यक है। 

OFFSET क्वेरी प्रदर्शन को प्रभावित कर सकता है, खासकर बड़े डेटासेट के साथ। SQL Server क्वेरी कैशिंग और निष्पादन को कुशलतापूर्वक संभालता है, लेकिन बड़े डेटासेट के साथ OFFSET का उपयोग करने पर अतिरिक्त अनुकूलन रणनीतियों की आवश्यकता हो सकती है, जैसे Common Table Expressions (CTEs) या अस्थायी तालिकाओं का उपयोग। इसलिए, आपको क्वेरी प्रदर्शन की निगरानी करनी चाहिए ताकि समस्याओं की पहचान हो सके और उन बाधाओं को दूर किया जा सके जो क्वेरी निष्पादन में रुकावट डालती हैं। DataCamp का Intermediate SQL Server कोर्स CTEs और अन्य उन्नत विषयों पर एक अध्याय शामिल करता है। 

यहाँ कुछ अतिरिक्त सर्वोत्तम प्रथाएँ हैं जो मुझे अपने अभ्यास के दौरान उपयोगी लगीं।

  • हमेशा उपयुक्त ORDER BY क्लॉज़ का उपयोग करें। यह तरीका सुनिश्चित करता है कि रिकॉर्ड्स सुसंगत रूप से सॉर्ट हों।
  • इंडेक्सिंग और क्वेरी अनुकूलन तकनीकों पर विचार करें। यह विधि विशेष रूप से बड़े डेटाबेस के साथ काम करते समय प्रदर्शन को अनुकूलित करती है।

निष्कर्ष और आगे की सीख

LIMIT के साथ मिलकर OFFSET क्लॉज़ में महारत हासिल करना कुशल डेटा प्रबंधन के लिए महत्वपूर्ण है। अपनी SQL क्वेरियों में इन क्लॉज़ का प्रयोग करें ताकि प्रदर्शन बेहतर हो और उपयोगकर्ता अनुभव में सुधार हो। आप SQL में OFFSET क्लॉज़ के बारे में अधिक जान सकते हैं DataCamp के Intermediate SQL और SQL Fundamentals कोर्सेज़ लेकर।

इसी तरह, आप हमारे Reporting in SQL कोर्स के साथ SQL का उपयोग करके डेटा विश्लेषण के बारे में और जान सकते हैं। साथ ही, यदि आप SQL प्रोजेक्ट्स के साथ अपने हाथों-हाथ कौशल का प्रदर्शन करना चाहते हैं, तो मैं SQL Associate Certification प्राप्त करने की सलाह देता हूँ, जो आपको नौकरी इंटरव्यू में अलग पहचान बनाने में मदद करेगा।


Allan Ouko's photo
Author
Allan Ouko
LinkedIn

डेटा एनालिटिक्स, बिज़नेस इंटेलिजेंस और डेटा साइंस में व्यावहारिक अनुभव रखने वाला डेटा साइंस तकनीकी लेखक। मैं SQL, Python, Power BI, Databricks और डेटा इंजीनियरिंग पर व्यावहारिक, उद्योग-केंद्रित सामग्री लिखता/लिखती हूँ, जो वास्तविक दुनिया की एनालिटिक्स कार्य से जुड़ी होती है। मेरी लेखनी तकनीकी गहराई और व्यावसायिक प्रभाव के बीच पुल का काम करती है, जिससे पेशेवरों को डेटा को आत्मविश्वासपूर्ण निर्णयों में बदलने में मदद मिलती है. 

अक्सर पूछे जाने वाले प्रश्न

SQL में OFFSET क्लॉज़ क्या है?

OFFSET क्लॉज़ का उपयोग क्वेरी में परिणाम लौटाने से पहले पंक्तियाँ छोड़ने के लिए किया जाता है।

हम OFFSET के साथ ORDER BY का उपयोग क्यों करते हैं?

हालाँकि हमारी क्वेरी बिना ORDER BY क्लॉज़ के भी चल जाएगी, आउटपुट सुसंगत या अपेक्षित न हो सकता है। ORDER BY के बिना OFFSET का उपयोग करने का अर्थ है कि डेटाबेस इंजन के पास पालन करने के लिए कोई निर्दिष्ट क्रम नहीं है, जिससे संभावित रूप से अप्रत्याशित परिणाम मिल सकते हैं, इसलिए हम आश्चर्य से बचने के लिए ORDER BY का उपयोग करते हैं।

SQL Server में LIMIT क्लॉज़ त्रुटि क्यों लौटाता है?

LIMIT क्लॉज़ MySQL, PostgreSQL और SQLite में समर्थित है। SQL Server के लिए FETCH का उपयोग करें।

OFFSET और LIMIT में क्या अंतर है?

OFFSET क्लॉज़ रिकॉर्ड्स लौटाने से पहले निर्दिष्ट पंक्तियाँ छोड़ता है, जबकि LIMIT क्लॉज़ लौटाई जाने वाली रिकॉर्ड्स की संख्या को सीमित करता है।

अगर मेरी OFFSET क्वेरी को निष्पादन में समय लगता है तो क्या करें?

आप क्वेरी को Common Table Expressions (CTEs) या अस्थायी तालिकाओं का उपयोग करके अनुकूलित कर सकते हैं।

विषय
SQL
डेटा विश्लेषण

DataCamp के साथ SQL सीखें

{count, plural, one {कोर्स} other {कोर्स}}

SQL परिचय

{hours} घंटा
1.6M
SQL से रिलेशनल डेटाबेस बनाना और क्वेरी करना सिर्फ दो घंटों में सीखें।
विवरण देखेंRight Arrow
पाठ्यक्रम शुरू करें

{count, plural, one {कोर्स} other {कोर्स}}

इंटरमीडिएट SQL

{hours} घंटा
528.1K
हर कदम पर व्यावहारिक अभ्यास क्वेरीज़ के साथ, यह पाठ्यक्रम आपको आज ही अपने SQL कोड से डेटा का विश्लेषण करने के लिए ज़रूरी सब कुछ सिखाता है!

{count, plural, one {कोर्स} other {कोर्स}}

SQL में Data Manipulation

{hours} घंटा
337.7K
जटिल SQL क्वेरियों में महारत हासिल करें, डेटा विज्ञान के विविध प्रश्नों के उत्तर दें और PostgreSQL में विश्लेषण के लिए मजबूत डेटा सेट तैयार करें।
और देखेंRight Arrow