SQL میں ٹاپ 10 قطاریں منتخب کریں۔

Sql My Ap 10 Qtary Mntkhb Kry



جب ہم ایس کیو ایل ڈیٹا بیس میں کام کر رہے ہوتے ہیں، تو ہمیں ایسی مثالیں مل سکتی ہیں جہاں ہمیں کسی مخصوص ٹیبل سے قطاروں کا ایک مخصوص ذیلی سیٹ لانے کی ضرورت ہوتی ہے۔ یہ ہمیں میز سے اقدار کو لانے کے لیے درکار وسائل کو محدود کرنے کی اجازت دیتا ہے۔

خوش قسمتی سے، ایس کیو ایل میں، ہمیں LIMIT شق تک رسائی حاصل ہے جو ہمیں قطاروں کی تعداد کو کنٹرول کرنے کی اجازت دیتی ہے جو ایک دیئے گئے نتیجہ کے سیٹ کے اندر واپس آتی ہیں۔ یہ خصوصیت اس وقت بہت مفید ہے جب ہم ایک بڑے ڈیٹا سیٹ کے ساتھ کام کر رہے ہوتے ہیں اور درحقیقت پوری قطار کی ضرورت نہیں ہوتی بلکہ اس کے ذیلی سیٹ کی ضرورت ہوتی ہے۔ یہ یا تو ڈیٹا یا پریزنٹیشن کی ترتیب حاصل کرنے کے لیے ہو سکتا ہے۔

اس ٹیوٹوریل میں، ہم سیکھیں گے کہ ہم کس طرح ایس کیو ایل ڈیٹابیس میں LIMIT شق کو استعمال اور اس کے ساتھ کام کر سکتے ہیں تاکہ ان قطاروں کی تعداد کی وضاحت کی جا سکے جو ہم ڈیٹا بیس سے بازیافت کرنا چاہتے ہیں۔







تقاضے:

اس سے پہلے کہ ہم SQL میں LIMIT شق کے کام اور استعمال میں غوطہ لگائیں، آئیے اس ٹیوٹوریل کے لیے کچھ بنیادی ضروریات پر بات کریں۔



اس پوسٹ کے ساتھ پیروی کرنے کے لیے، آپ کو درج ذیل کی ضرورت ہوگی:



  1. MySQL 8.0 اور اس سے اوپر MySQL 5 کے ساتھ کام کرتا ہے۔
  2. سکیلا نمونہ ڈیٹا بیس تک رسائی
  3. ٹارگٹ ڈیٹا بیس سے قطاروں سے استفسار کرنے کی اجازت (پڑھنے تک رسائی)

دی گئی ضروریات کو پورا کرنے کے ساتھ، ہم اس ٹیوٹوریل کے ساتھ آگے بڑھ سکتے ہیں۔





SQL LIMIT

SQL میں، LIMIT شق ہمیں قطاروں کی تعداد کو محدود کرنے کی اجازت دیتی ہے جو کسی دیے گئے SQL استفسار سے واپس کی جاتی ہیں۔ مثال کے طور پر، ایک منتخب بیان میں، ٹیبل سے تمام قطاریں واپس کرنے کے بجائے جن میں 1000 سے زیادہ ریکارڈز شامل ہو سکتے ہیں، ہم صرف پہلی 10 قطاریں دیکھنے کا انتخاب کر سکتے ہیں۔

درج ذیل ایس کیو ایل میں LIMIT شق کا بنیادی نحو دکھاتا ہے:



col1، col2، ... کو منتخب کریں

tbl_name سے

LIMIT num_rows;

اس مثال میں، ہم SELECT بیان کے ساتھ مل کر LIMIT شق استعمال کر رہے ہیں۔

دیئے گئے نحو سے، 'tbl_name' اس ٹیبل کے نام کی نمائندگی کرتا ہے جہاں سے ہم ڈیٹا کو بازیافت کرنا چاہتے ہیں۔

'num_rows' ہمیں قطاروں کی زیادہ سے زیادہ تعداد بتانے کی اجازت دیتا ہے جو نتیجہ کے سیٹ میں واپس آتی ہیں۔

مثال 1: قطاروں کی تعداد کو محدود کریں۔

LIMIT شق کا سب سے عام اور بنیادی کردار قطاروں کی زیادہ سے زیادہ تعداد کا تعین کرنا ہے جو نتائج کے سیٹ میں شامل ہیں۔

فرض کریں کہ ہم سکیلا نمونہ ڈیٹا بیس سے 'فلم' ٹیبل استعمال کرنا چاہتے ہیں۔ تاہم، چونکہ ہم تمام متعلقہ قطاروں کو حاصل نہیں کرنا چاہتے، اس لیے ہم پہلی 10 قطاروں کو منتخب کر سکتے ہیں جیسا کہ درج ذیل مثال کی شق میں دکھایا گیا ہے:

فلم سے * منتخب کریں۔

LIMIT 10 ;

ایک بار جب ہم دی گئی استفسار کو چلاتے ہیں، تو ہمیں مندرجہ ذیل آؤٹ پٹ ملنا چاہیے:

  کمپیوٹر کی تفصیل کا اسکرین شاٹ خود بخود تیار ہوتا ہے۔

اس مثال میں، ہم نتیجہ کو 10 قطاروں تک محدود کرنے کے لیے LIMIT شق کا استعمال کرتے ہیں۔ یہ نتیجہ سے پہلی 10 قطاریں لاتا ہے۔

مثال 2: آف سیٹ ویلیو کا استعمال

کچھ معاملات میں، ہم قطاروں کی مخصوص تعداد کو چھوڑنا یا چھوڑنا چاہتے ہیں۔ مثال کے طور پر، فرض کریں کہ ہم صرف پانچ عناصر کو بازیافت کرنا چاہتے ہیں، لیکن ہم پوزیشن 20 سے شروع کرنا چاہتے ہیں۔ ہم OFFSET پیرامیٹر کا استعمال کر سکتے ہیں جو ہمیں LIMIT کی شق کو بتانے کی اجازت دیتا ہے کہ ہم کس پوزیشن پر شروع کرنا چاہتے ہیں۔

یہ خاص طور پر مفید ہے جب آپ کو کسی بڑے ڈیٹاسیٹ میں صفحہ بندی کو لاگو کرنے کی ضرورت ہو جیسا کہ درج ذیل مثال میں دکھایا گیا ہے:

فلم سے فلم_آئی ڈی، ٹائٹل، ریلیز_سال، 'لمبائی' منتخب کریں۔

LIMIT 10 آفسیٹ بیس ;;

اس کو پوزیشن 20 سے شروع ہونے والی 10 قطاریں حسب ذیل واپس کرنی چاہئیں:

جیسا کہ آپ دیے گئے نتیجے سے دیکھ سکتے ہیں، 'film_id' کا آغاز پوزیشن 21 سے ہوتا ہے اور پوزیشن 30 تک جاتا ہے۔

مثال 3: شق کے ذریعہ آرڈر کا استعمال

LIMIT شق کا ایک اور عام استعمال ORDER BY شق کے ساتھ مل کر ہے۔ یہ ہمیں قطاروں کی مخصوص تعداد کو بازیافت کرنے کی اجازت دیتا ہے جو ایک خاص ترتیب پر مبنی ہیں۔ اس میں بنیادی ترتیب (صعودی یا نزول) وغیرہ شامل ہو سکتی ہے۔

مثال کے طور پر، فرض کریں کہ ہم 'فلم' ٹیبل سے ٹاپ 10 طویل ترین فلموں کو بازیافت کرنا چاہتے ہیں۔ ہم لمبائی کی بنیاد پر اقدار کو ترتیب دینے کے لیے ORDER BY شق کا استعمال کر سکتے ہیں اور پھر پہلی 10 قطاروں کو محدود کر سکتے ہیں۔

ایک مثال درج ذیل ہے:

f.film_id، f.title، f.length کو منتخب کریں۔

فلم سے ایف

ترتیب لمبائی کے لحاظ سے DESC

LIMIT 10 ;

اس صورت میں، ہم ORDER BY شق کو نزولی ترتیب میں ترتیب دینے کے لیے استعمال کرتے ہیں (سب سے زیادہ سے کم ترین) اور پھر LIMIT شق کا استعمال کرتے ہوئے پہلی 10 قطاریں حاصل کرتے ہیں۔

نتیجہ سیٹ مندرجہ ذیل ہے:

  فہرست کی ایک جدول تفصیل خود بخود درمیانے اعتماد کے ساتھ تیار کی گئی ہے۔

وہاں آپ کے پاس ہے!

نتیجہ

اس پوسٹ میں، ہم نے SQL ڈیٹا بیس میں LIMIT شق کے ساتھ کام کرنے کے بنیادی اور جدید خصوصیات کو سیکھا۔