यदि आप BETWEEN में केवल अंत मान को शामिल नहीं करना चाहते हैं, तो NOT IN में केवल अंत मान दें।
सिंटैक्स
SELECT * FROM yourTableName WHERE yourColumnName BETWEEN yourStartingValue AND yourEndingValue AND yourColumnName NOT IN (yourEndingValue);
उदाहरण के साथ समझें
उसी टेबल BetweenWithoutEndPoints का उपयोग करते हैं (पिछले आर्टिकल जैसी) जिसमें 9 रिकॉर्ड हैं।
केवल अंत बिंदु (8) को बाहर करके BETWEEN
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 | +----+-------+------+ 5 rows in set (0.03 sec)
इस बार Id 3 शामिल है लेकिन Id 8 बाहर है। रेंज 3 से 7 तक है।
तुलना
BETWEEN 3 AND 8→ 3, 4, 5, 6, 7, 8 (दोनों शामिल)BETWEEN 3 AND 8 AND NOT IN (3, 8)→ 4, 5, 6, 7 (दोनों बाहर)BETWEEN 3 AND 8 AND NOT IN (8)→ 3, 4, 5, 6, 7 (केवल अंत बाहर)