IN অপারেটর ব্যবহার
একই কলামে একাধিক নির্দিষ্ট ভ্যালু ম্যাচ করাতে OR চেইন না করে IN অপারেটর ব্যবহার করুন। এটি পঠনযোগ্য এবং পারফরম্যান্সে ভালো।
সিনট্যাক্স
SELECT * FROM yourTableName WHERE yourColumnName IN ('value1', 'value2', 'value3', ...);
উদাহরণ
টেবিল তৈরি
mysql> create table InOperatorDemo (
-> ClientId int
-> );
Query OK, 0 rows affected (0.52 sec)
ডেটা ইনসার্ট
mysql> insert into InOperatorDemo values(101); Query OK, 1 row affected (0.19 sec) mysql> insert into InOperatorDemo values(110); Query OK, 1 row affected (0.11 sec) mysql> insert into InOperatorDemo values(120); Query OK, 1 row affected (0.17 sec) mysql> insert into InOperatorDemo values(230); Query OK, 1 row affected (0.11 sec) mysql> insert into InOperatorDemo values(270); Query OK, 1 row affected (0.15 sec) mysql> insert into InOperatorDemo values(300); Query OK, 1 row affected (0.14 sec)
সকল রেকর্ড
mysql> select * from InOperatorDemo;
আউটপুট
+----------+ | ClientId | +----------+ | 101 | | 110 | | 120 | | 230 | | 270 | | 300 | +----------+
IN দিয়ে ফিল্টার
mysql> SELECT * FROM InOperatorDemo WHERE ClientId IN ('120', '270', '300');
আউটপুট
+----------+ | ClientId | +----------+ | 120 | | 270 | | 300 | +----------+
নোট: সংখ্যাসূচক কলামে কোটেশন দিলেও MySQL অটোমেটিক কাস্ট করে। তবে স্ট্রিং কলামে কোটেশন বাধ্যতামূলক। বড় লিস্টের জন্য IN इंडেক্স ব্যবহার করে দ্রুত কাজ করে।