সিনট্যাক্স শেখার আগে পাঁচটা রোজকার অভিজ্ঞতা দিয়ে শুরু করি — প্রতিটা তোমার নিজের চেনা।
📱 গল্প ১ — Facebook News Feed
ধরো Facebook-এ ৫০ কোটি পোস্ট আছে। তুমি Facebook খুললে কি সব ৫০ কোটি পোস্ট একসাথে দেখায়?
প্রশ্ন: না তো! তাহলে Facebook কি করে? আর যদি সত্যিই সব পোস্ট একসাথে লোড করার চেষ্টা করত, তোমার ফোনে কী হতো?
Facebook ডেটাবেজ থেকে শুধু প্রথম কয়েকটা পোস্ট নিয়ে আসে — বাকিগুলো তুমি স্ক্রল করলে তখন আনে। এই "শুধু কয়েকটা আনা"-র কাজটাই করে LIMIT।
📦 গল্প ২ — Amazon
Amazon-এ ১ কোটি প্রোডাক্ট আছে। তুমি "Laptop" লিখে সার্চ করলে, Amazon প্রথমে দেখায় মাত্র ২০টা প্রোডাক্ট।
প্রশ্ন: কেন ১ কোটি প্রোডাক্ট একসাথে দেখাবে না?
Database
→
LIMIT
→
প্রথম ২০টা প্রোডাক্ট
→
দ্রুত ইউজার এক্সপেরিয়েন্স
▶️ গল্প ৩ — YouTube
"Python Tutorial" লিখে সার্চ করলে লক্ষ লক্ষ ভিডিও থাকা সত্ত্বেও YouTube প্রথমে দেখায় মাত্র প্রায় ২০টা ভিডিও।
🏥 গল্প ৪ — হাসপাতাল
হাসপাতালে ১ লক্ষ রোগীর রেকর্ড আছে। রিসেপশনিস্ট শুধু দেখতে চায়:
- সর্বশেষ ১০ জন রোগী।
- প্রথম ২০টা অ্যাপয়েন্টমেন্ট।
- সবচেয়ে জরুরি ৫টা ইমার্জেন্সি কেস।
প্রশ্ন: সবকিছু কেন লোড করতে হবে, যখন দরকার মাত্র কয়েকটা?
🏦 গল্প ৫ — ব্যাংক
ব্যাংক ম্যানেজার চান:
- সর্বোচ্চ ব্যালেন্সের টপ ১০ গ্রাহক।
- সর্বশেষ ২০টা লেনদেন।
- নতুন খোলা প্রথম ৫০টা অ্যাকাউন্ট।
প্রশ্ন: সিস্টেম কি লক্ষ লক্ষ রেকর্ড রিটার্ন করবে, নাকি শুধু দরকারি কয়েকটা?
প্রথম দিকের ডেটাবেজ সিস্টেমগুলো ছোট ছোট ডেটাসেট নিয়ে কাজ করত, তাই কোয়েরি চালালে সব রেকর্ড একসাথে ফেরত দেওয়াটা সমস্যা ছিল না। কিন্তু যখন সার্চ ইঞ্জিন, ব্যাংকিং সিস্টেম, সোশ্যাল মিডিয়া আর ই-কমার্স প্ল্যাটফর্মে ডেটার পরিমাণ কোটি কোটিতে পৌঁছাল, তখন সব রেকর্ড একসাথে ফেরত দেওয়া অসম্ভব হয়ে গেল — এতে সার্ভার স্লো হয়ে যেত, ইউজারের ব্রাউজার ক্র্যাশ করত। তাই LIMIT (এবং SQL Server-এ TOP) ডেটাবেজ ভাষায় অপরিহার্য একটা অংশ হয়ে উঠল।