ใช้ BETWEEN ... AND ... ร่วม NOT IN (endVal) เพื่อตัดเฉพาะค่าสิ้นสุดออก
ไวยากรณ์
SELECT * FROM yourTable WHERE yourColumn BETWEEN startVal AND endVal AND yourColumn NOT IN (endVal);
ตัวอย่าง (ใช้ตารางเดียวกับบทความก่อนหน้า)
ข้อมูลตาราง BetweenWithoutEndPoints เดิม (Id 1-9)
กรณี 1: ตัดทั้งจุดเริ่มและจุดสิ้นสุด (3 และ 8)
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 | +----+-------+------+
กรณี 2: ตัดเฉพาะจุดสิ้นสุด (8)
mysql> SELECT * FROM BetweenWithoutEndPoints WHERE Id BETWEEN 3 AND 8 AND Id NOT IN (8);
+----+-------+------+ | Id | Name | Age | +----+-------+------+ | 3 | David | 28 | | 4 | Sam | 26 | | 5 | Carol | 21 | | 6 | John | 29 | | 7 | James | 20 | +----+-------+------+
สรุป: ใช้ NOT IN ระบุค่าที่ต้องการตัดออกจากช่วง BETWEEN