ক্রেগ ফ্রিডম্যানের ব্লগে নেস্টেড লুপস জয়েনে তিনি ব্যাখ্যা করেছেন যে নেস্টেড লুপগুলি কেন যোগদান করে একটি সঠিক বাহ্যিক যোগদানকে সমর্থন করতে পারে না:
সমস্যাটি হ'ল আমরা একাধিকবার অভ্যন্তরীণ টেবিলটি স্ক্যান করি - একবার বাইরের জোড়ের প্রতিটি সারির জন্য। এই একাধিক স্ক্যানের সময় আমরা একই অভ্যন্তরীণ সারিগুলি একাধিকবার মুখোমুখি হতে পারি। কোন পর্যায়ে আমরা উপসংহারে পৌঁছাতে পারি যে কোনও নির্দিষ্ট অভ্যন্তরীণ সারিটি যোগ দেয় না বা যোগ দেয় না?
কেউ কি দয়া করে এটি খুব সাধারণ এবং শিক্ষামূলক উপায়ে ব্যাখ্যা করতে পারেন?
এর অর্থ কী লুপটি বাইরের টেবিল ( R1) দিয়ে শুরু হয় এবং অভ্যন্তরীণ ( R2) স্ক্যান করে ?
আমি বুঝতে পারি যে একটি R1মানের সাথে যোগ দেয় না তার জন্য R2এটি এমন একটি প্রতিস্থাপন করা উচিত NULLযাতে ফলাফল সেটটি ( NULL, R2) হয়ে যায় । আমার জন্য যোগদান করা না R2হলে R1কোনও মান ফিরিয়ে দেওয়া অসম্ভব বলে মনে হয় যে কারণে কোন মানটি ফেরত দিতে হবে তা তা জানতে পারে না R2। তবে এটি ব্যাখ্যা করার উপায় নয়। অথবা এটা?
এসকিউএল সার্ভার প্রকৃতপক্ষে এর সাথে অনুকূলকরণ (এবং প্রায়শই প্রতিস্থাপন করে) RIGHT JOINকরে LEFT JOINতবে প্রশ্নটি ব্যাখ্যা করার কারণ এটি কেন / সমর্থন যুক্তি ব্যবহারের জন্য প্রযুক্তিগতভাবে অসম্ভব ।NESTED LOOPS JOINRIGHT JOIN