কম্পিউটার টিউটোরিয়াল

MySQL-এ BETWEEN অপারেটর ব্যবহার করে রেঞ্জের মধ্যে মান খোঁজা

MySQL-এ কোনো মান নির্দিষ্ট রেঞ্জের (Start এবং End) মধ্যে পড়ে কিনা চেক করতে BETWEEN অপারেটর ব্যবহার করা হয়। এটি ইনক্লুসিভ (উভয় सीমান्त অন্তর্ভুক্ত)।

টেবিল তৈরি এবং ডেটা ইনসার্ট

mysql> CREATE TABLE DemoTable (
    -> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> Start INT,
    -> End INT
    -> );
Query OK, 0 rows affected (0.91 sec)
mysql> INSERT INTO DemoTable(Start, End) VALUES(100, 200);
mysql> INSERT INTO DemoTable(Start, End) VALUES(400, 500);
mysql> INSERT INTO DemoTable(Start, End) VALUES(210, 350);

সব রেকর্ড দেখানো

mysql> SELECT * FROM DemoTable;

আউটপুট

+----+-------+------+
| Id | Start | End  |
+----+-------+------+
| 1  | 100   | 200  |
| 2  | 400   | 500  |
| 3  | 210   | 350  |
+----+------+------+
3 rows in set (0.00 sec)

৪৩২ মানটি কোনো রেঞ্জে আছে কিনা চেক

mysql> SELECT * FROM DemoTable WHERE 432 BETWEEN Start AND End;

আউটপুট

+----+-------+------+
| Id | Start | End  |
+----+-------+------+
| 2  | 400   | 500  |
+----+-------+------+
1 row in set (0.04 sec)

ব্যাখ্যা: 432 BETWEEN Start AND End মানে Start <= 432 AND End >= 432। রো ২ (৪০০-৫০০) এই শর্ত পূরণ করে।

বিকল্প লিখন: WHERE Start <= 432 AND End >= 432 — সমতুল্য, কিছু কেসে ইনডেক্স ব্যবহারে ভালো পারফরম্যান্স দেয়।

স্ট্রিং/ডেটার জন্য: WHERE '2019-06-15' BETWEEN StartDate AND EndDate — লেক্সিকোগ্রাফিক্যালি কাজ করে (ডেটা টাইপ সঠিক হলে)।

  1. MySQL-এ BETWEEN ক্লজ ব্যবহার করে দুটি কলামের মাঝপথে মান খুঁজে বের করা

  2. MySQL-এ ডুপ্লিকেট ভ্যালু পেয়ার খুঁজে বের করা

  3. MySQL-এ দুটি টেবিলের মধ্যে অনুপস্থিত ভ্যালু খুঁজে বের করা

  4. MySQL-এ GREATEST() ফাংশন ব্যবহার করে একাধিক কলামে NULL আছে কিনা যাচাই করা