MySQL-এ BETWEEN অপারেটর ডিফল্টভাবে শুরু এবং শেষ মান দুটোই অন্তর্ভুক্ত করে। যদি দুটোই বাদ দিতে চান, তবে NOT IN যোগ করুন।
সিনট্যাক্স
SELECT * FROM yourTableName WHERE yourColumnName BETWEEN startValue AND endValue AND yourColumnName NOT IN (startValue, endValue);
উদাহরণ
টেবিল তৈরি করি:
mysql> create table BetweenWithoutEndPoints
-> (
-> Id int NOT NULL AUTO_INCREMENT,
-> Name varchar(20),
-> Age int,
-> PRIMARY KEY(Id)
-> ); Query OK, 0 rows affected (0.54 sec)
রেকর্ড যোগ করি (Id ১ থেকে ৯):
mysql> insert into BetweenWithoutEndPoints(Name,Age) values('Mike',23);
mysql> insert into BetweenWithoutEndPoints(Name,Age) values('Larry',25);
mysql> insert into BetweenWithoutEndPoints(Name,Age) values('David',28);
mysql> insert into BetweenWithoutEndPoints(Name,Age) values('Sam',26);
mysql> insert into BetweenWithoutEndPoints(Name,Age) values('Carol',21);
mysql> insert into BetweenWithoutEndPoints(Name,Age) values('John',29);
mysql> insert into BetweenWithoutEndPoints(Name,Age) values('James',20);
mysql> insert into BetweenWithoutEndPoints(Name,Age) values('Robert',26);
mysql> insert into BetweenWithoutEndPoints(Name,Age) values('Michael',30);
সকল রেকর্ড
mysql> select *from BetweenWithoutEndPoints;
আউটপুট
+----+---------+------+ | Id | Name | Age | +----+---------+------+ | 1 | Mike | 23 | | 2 | Larry | 25 | | 3 | David | 28 | | 4 | Sam | 26 | | 5 | Carol | 21 | | 6 | John | 29 | | 7 | James | 20 | | 8 | Robert | 26 | | 9 | Michael | 30 | +----+---------+------+
Id ৩ থেকে ৮ পর্যন্ত, কিন্তু ৩ ও ৮ বাদ দিয়ে
mysql> SELECT * FROM BetweenWithoutEndPoints WHERE Id BETWEEN 3 AND 8 AND Id NOT IN (3, 8);
ফলাফল
+----+-------+------+ | Id | Name | Age | +----+-------+------+ | 4 | Sam | 26 | | 5 | Carol | 21 | | 6 | John | 29 | | 7 | James | 20 | +----+-------+------+ 4 rows in set (0.04 sec)