কম্পিউটার

মাইএসকিউএল-এ "কোথায় 1=1" বিবৃতি কী?


MySQL-এ "Where 1=1" এর ফলে একটি টেবিলের সব সারি দেখা যায় কারণ এই বিবৃতিটি সর্বদা সত্য। এই বিবৃতিটি আরও ভালভাবে বোঝার জন্য একটি উদাহরণ নিম্নরূপ দেওয়া হল -

প্রথমে create কমান্ডের সাহায্যে একটি টেবিল তৈরি করা হয়। এটি নিম্নরূপ দেওয়া হয় -

mysql> টেবিল তৈরি করুন WhereConditon-> (-> id int,-> name varchar(100)-> );কোয়েরি ঠিক আছে, 0 সারি প্রভাবিত (0.43 সেকেন্ড)

সফলভাবে একটি টেবিল তৈরি করার পরে, কিছু রেকর্ড সন্নিবেশ কমান্ডের সাহায্যে ঢোকানো হয়, এর জন্য ক্যোয়ারী নিম্নরূপ দেওয়া হল -

mysql> যেখানে কন্ডিটন মান (1, 'জন') ঢোকান; কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.16 সেকেন্ড) mysql> যেখানে কন্ডিটন মান (2, 'স্মিথ') এ ঢোকান; কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.15 সেকেন্ড) )mysql> WhereConditon মান (3,'Bob') এ ঢোকান; কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.16 সেকেন্ড) mysql> যেখানে কন্ডিটন মান (4, 'ডেভিড') এ ঢোকান; কোয়েরি ঠিক আছে, 1 সারি প্রভাবিত (0.13 সেকেন্ড) 

এখন যেহেতু রেকর্ডগুলি সফলভাবে সন্নিবেশ করা হয়েছে, টেবিলে রেকর্ডের সংখ্যা নির্বাচন বিবৃতির সাহায্যে পরীক্ষা করা যেতে পারে। এটি নিম্নরূপ দেওয়া হয় -

যেখানে কন্ডিটন থেকে
mysql> SELECT *;

উপরের ক্যোয়ারীটি কার্যকর করার পরে, টেবিল থেকে সমস্ত রেকর্ডগুলি নিম্নরূপ দেখা যাবে -

+------+-------+| আইডি | নাম |+------+-------+| 1 | জন || 2 | স্মিথ || 3 | বব || 4 | ডেভিড |+------+-------+4 সারি সেটে (0.00 সেকেন্ড)

এখন, 1=1 স্টেটমেন্টটি সিলেক্ট স্টেটমেন্টের সাথে টেবিলে নামগুলি প্রদর্শন করতে ব্যবহৃত হয়। সমস্ত নাম 1=1 সর্বদা সত্য হিসাবে প্রদর্শিত হবে।

এই জন্য ক্যোয়ারী নিম্নরূপ দেওয়া হয় -

mysql> WhereConditon থেকে নাম নির্বাচন করুন যেখানে 1=1;

নিম্নোক্ত ক্যোয়ারীটির আউটপুট

<প্রে>+------+| নাম |+------+| জন || স্মিথ || বব || ডেভিড |+------+4 সারি সেটে (0.00 সেকেন্ড)

  1. একটি MySQL ক্যোয়ারীতে স্ল্যাশ মানে কি?

  2. OR WHERE স্টেটমেন্ট ব্যবহার করে কলাম এবং এর মান প্রদর্শন করতে MySQL ক্যোয়ারী

  3. মাইএসকিউএল ক্যোয়ারী IF স্টেটমেন্টের ফলে একটি স্ট্রিং ফেরত দিতে?

  4. একটি MySQL ক্যোয়ারীতে একটি IF স্টেটমেন্ট সন্নিবেশ করার সঠিক উপায় কি?