মাইএসকিউএলে অফসেটের সাথে সীমাবদ্ধ ব্যবহার করার সময় কোন সারিগুলি ফিরে আসে?


140

নীচের প্রশ্নের মধ্যে:

SELECT column 
FROM table
LIMIT 18 OFFSET 8

আউটপুট হিসাবে আমরা কত ফলাফল পাব এবং কোথা থেকে কোথা থেকে পাব?


অর্ডারটি প্রথমে সীমাবদ্ধ হওয়া দরকার, তারপরে অফসেট। তা না হলে এটি একটি ত্রুটি নিক্ষেপ করবে।
মাউসার 16

উত্তর:


189

এটি রেকর্ড # 9 থেকে শুরু হয়ে রেকর্ড # 26 এ শেষ হয়ে 18 টি ফলাফল ফিরিয়ে দেবে।

থেকে কোয়েরি পড়ে শুরু করুন offset। প্রথমে আপনি 8 দ্বারা অফসেট করেন যার অর্থ আপনি কোয়েরির প্রথম 8 টি ফলাফল এড়িয়ে যান। তারপরে আপনি 18 দ্বারা সীমাবদ্ধ করেন means যার অর্থ আপনি 9, 10, 11, 12, 13, 14, 15, 16 .... 24, 25, 26 রেকর্ড বিবেচনা করুন যা মোট 18 টি রেকর্ড।

পরীক্ষা করে দেখুন এই বাইরে।

এবং সরকারী ডকুমেন্টেশন


আপনি সঠিক, বি / ডাব্লু সীমা 8,18 এবং সীমা 18 অফসেট 8
অরুণ কিলু

26
না, এটা একই। LIMIT 8, 18কেবলমাত্র একটি শর্টকাট :)
মোস্তি মোস্তাচো


47

OFFSET সারণীতে কার্সার শুরু করার নির্দেশক একটি কীওয়ার্ড ছাড়া আর কিছুই নয়

SELECT column FROM table LIMIT 18 OFFSET 8 -- fetch 18 records, begin with record 9 (OFFSET 8)

আপনি একই ফলাফল ফর্ম পাবেন

SELECT column FROM table LIMIT 8, 18

ভিজ্যুয়াল প্রতিনিধিত্ব ( Rকিছু সারণিতে এক রেকর্ড)

 OFFSET        LIMIT          rest of the table
 __||__   _______||_______   __||__
/      \ /                \ /
RRRRRRRR RRRRRRRRRRRRRRRRRR RRRR...
         \________________/
                 ||
             your result

3

আপনি 8 হিসাবে columnউল্লিখিত OFFSETহিসাবে 9 থেকে 26 মান পর্যন্ত আউটপুট পাবেন

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.