কম্পিউটার

MySQL সাবকোয়ারিগুলির সাথে EXIST এবং EXIST NOT অপারেটরের ব্যবহার কী?


সাবকোয়েরির ফলাফল সেটে সারিগুলির অস্তিত্বের জন্য বিদ্যমান অপারেটর পরীক্ষা৷ যদি একটি সাবকোয়েরি সারি মান পাওয়া যায় তাহলে EXISTS সাবকোয়েরিটি সত্য এবং যদি FALSE হয় তাহলে সাবকোয়েরিটি বিদ্যমান নয়৷ এটিকে ব্যাখ্যা করার জন্য আমরা 'কার', 'গ্রাহক' এবং 'রিজার্ভেশন' টেবিলগুলি ব্যবহার করছি যাতে নিম্নলিখিত ডেটা রয়েছে -

mysql> গাড়ি থেকে * নির্বাচন করুন;+------+---------------+---------+| আইডি | নাম | মূল্য |+------+---------------+---------+| 1 | নেক্সা | 750000 || 2 | মারুতি সুইফট | 450000 || 3 | BMW | 4450000 || 4 | ভলভো | 2250000 || 5 | অল্টো | 250000 || 6 | স্কোডা | 1250000 || 7 | টয়োটা | 2400000 || 8 | ফোর্ড | 1100000 |+------+---------------+---------+8 সারি সেটে (0.02 সেকেন্ড)mysql> গ্রাহকদের থেকে * নির্বাচন করুন; +---------------+---------+| গ্রাহক_আইডি | নাম |+------------+---------+| 1 | রাহুল || 2 | যশপাল || 3 | গৌরব || 4 | বীরেন্ডার |+------------+------------ সেটে 4 সারি (0.00 সেকেন্ড) mysql> সংরক্ষণ থেকে * নির্বাচন করুন;+------ +---------------+------------+| আইডি | গ্রাহক_আইডি | দিন |+------+-------------+------------+| 1 | 1 | 2017-12-30 || 2 | 2 | 2017-12-28 || 3 | 2 | 2017-12-29 || 4 | 1 | 2017-12-25 || 5 | 3 | 2017-12-26 |+------+------------+------------+5 সারি সেটে (0.00 সেকেন্ড) 

নিম্নলিখিত মাইএসকিউএল সাবকোয়ারিটি উপরে উল্লিখিত সারণীগুলি ব্যবহার করে বিদ্যমান সহ-

mysql> যেখানে বিদ্যমান গ্রাহকদের থেকে নাম নির্বাচন করুন (নির্বাচন করুন * রিজার্ভেশন থেকে যেখানে Customers.customer_id =Reservations.customer_id);+---------+| নাম |+---------+| রাহুল || যশপাল || গৌরব |+---------+3 সারি সেটে (0.06 সেকেন্ড)

উপরের প্রশ্নটি গ্রাহকদের নাম দেয় যারা একটি রিজার্ভেশন করেছেন৷

নিম্নলিখিত MySQL সাবকোয়েরি যার অস্তিত্ব নেই উপরে উল্লিখিত সারণীগুলি ব্যবহার করে −

mysql> যেখানে বিদ্যমান নেই এমন গ্রাহকদের থেকে নাম নির্বাচন করুন (নির্বাচন করুন * রিজার্ভেশন থেকে যেখানে Customers.customer_id =Reservations.customer_id);+----------+| নাম |+---------+| বীরেন্ডার |+---------+1 সারি সেটে (0.04 সেকেন্ড)

উপরের প্রশ্নটি সেই গ্রাহকদের নাম দেয় যারা কোনো রিজার্ভেশন করেননি।


  1. AND অপারেটরের সাথে MySQL আপডেট সম্পাদন করুন

  2. একটি টেবিল তৈরি করুন যদি এটি ইতিমধ্যে বিদ্যমান না থাকে এবং MySQL এর সাথে একই ক্যোয়ারীতে একটি রেকর্ড সন্নিবেশ করুন

  3. MySQL-এ লজিক্যাল এবং অপারেটরের সাথে আপডেট করুন

  4. MySQL এ!=NULL এবং IS NOT NULL এর মধ্যে পার্থক্য কি?