মূল কন্টেন্টে যান
মডিউল 2 · 1-এর পাঠ 4কোর্সে 5/57~6 min
মডিউল পাঠ (1/4)

LIMIT সহ সীমাবদ্ধতা

একটি প্রশ্ন সহজেই হাজার হাজার (বা লক্ষ লক্ষ) সারি ফেরত দিতে পারে। যখন আপনি শুধুমাত্র একটি প্রিভিউ চাই — অথবা যখন আপনি একটি টপ-এন র‍্যাঙ্কিং তৈরি করতে চান — আপনি ব্যবহার করেন LIMIT_ ধারা:

SQL
SELECT <colonne>
FROM   <tabella>
[WHERE  <condizione>]
[ORDER BY <colonna> [ASC|DESC]]
LIMIT  <numero>;

LIMIT ক্যোয়ারীটির শেষ এ যায় এবং ফলাফলকে ছেঁটে দেয় প্রদত্ত সারির সংখ্যা। এটি নিজেই একটি র্যাঙ্কিং তৈরি করার জন্য যথেষ্ট নয়: ছাড়া ORDER BY, SQL গ্যারান্টি দেয় না যে কোন সারি আপনি ফিরে পাবেন। তাই সোনালী নিয়ম হল:

Top-N = ORDER BY + LIMIT।

উদাহরণ

SQL
-- Le prime 5 righe della tabella, in ordine arbitrario:
SELECT * FROM employees LIMIT 5;

-- I 3 dipendenti più pagati:
SELECT first_name, last_name, salary
FROM employees
ORDER BY salary DESC
LIMIT 3;

-- I 5 progetti con il budget più basso:
SELECT name, budget
FROM projects
ORDER BY budget ASC
LIMIT 5;

চেষ্টা করে দেখুন

ব্যায়াম#sql.m2.l1.e1
প্রচেষ্টা: 0লোড হচ্ছে...

সর্বোচ্চ থেকে সর্বনিম্ন বেতনের 3 জন সর্বোচ্চ বেতনপ্রাপ্ত কর্মচারীর শেষ নাম (শেষ_নাম) এবং বেতন (বেতন) দেখান।

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

র‌্যাঙ্কিংয়ের জন্য আপনার ORDER BY বেতন DESC এবং শীর্ষ তিনে থামতে LIMIT 3 প্রয়োজন।

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ

ব্যায়াম পর্যালোচনা করুন

ব্যায়াম#sql.m2.l1.e2
প্রচেষ্টা: 0লোড হচ্ছে...

সর্বাধিক বেতনপ্রাপ্ত 2 জন কর্মচারীকে এড়িয়ে যান এবং অবিলম্বে নিম্নলিখিত 3 জনকে দেখান (উন্নত বেতনের র‍্যাঙ্কিংয়ে 3য়, 4র্থ এবং 5ম)। LIMIT এর পরে OFFSET ব্যবহার করুন।

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

অফসেট 2 প্রথম 2টি সারি এড়িয়ে যায়, LIMIT 3 পরবর্তী 3টি নেয়৷

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ