আমার কাছে মনে হয় যে আপনি এসকিউএল কোয়েরিতে একই জিনিসটি বিদ্যমান নেই, নেই, বা যেখানে নেই সেখানে বামে যোগ দিয়ে ব্যবহার করতে পারেন। উদাহরণ স্বরূপ:
SELECT a FROM table1 WHERE a NOT IN (SELECT a FROM table2)
SELECT a FROM table1 WHERE NOT EXISTS (SELECT * FROM table2 WHERE table1.a = table2.a)
SELECT a FROM table1 LEFT JOIN table2 ON table1.a = table2.a WHERE table1.a IS NULL
আমি নিশ্চিত না যে আমার সমস্ত বাক্য গঠন সঠিক হয়েছে কিনা, তবে এগুলি আমি দেখেছি এমন সাধারণ কৌশল। আমি কেন অপরটিকে ব্যবহার করতে পছন্দ করব? পারফর্মেন্স কি আলাদা হয় ...? এর মধ্যে কোনটি দ্রুত / সবচেয়ে দক্ষ? (যদি এটি বাস্তবায়নের উপর নির্ভর করে তবে আমি কখন প্রত্যেকে ব্যবহার করব?)
EXISTSক্লজের অভ্যন্তরে ফিরে আসবেন সে সম্পর্কে কোনও ডাটাবেস পাত্তা দেয় না । আপনি ফেরত দিতে পারেন *, NULLবা যাই হোক না কেন: এই সব দূরে অপ্টিমাইজ করা হবে না।
SELECTএবং এর মধ্যে কিছু রাখার দাবি করে FROM। এবং *টাইপ করা সহজ। হ্যাঁ, SQLকোনও প্রাকৃতিক ভাষার সাথে কিছু সাদৃশ্য রয়েছে তবে এটি একটি যন্ত্র, একটি প্রোগ্রামযুক্ত মেশিন দ্বারা পার্স এবং কার্যকর করা হয়েছে। এটি এমন নয় যে এটি কখনও কখনও হঠাৎ আপনার ঘনক্ষেত্রে প্রবেশ করবে এবং চিৎকার করবে "কোনও EXISTSক্যোয়ারীতে অতিরিক্ত ক্ষেত্রের জন্য দাবি করা বন্ধ করুন কারণ আমি তাদের পার্স করার পরে অসুস্থ হয়ে পড়েছি!" সত্যিই, এটি একটি কম্পিউটারের সাথে ঠিক আছে।