१. परिचय
MySQL डाटाबेसमा क्वेरीहरूलाई प्रभावकारी रूपमा चलाउनको मुख्य तत्वहरूमध्ये एक हो BETWEEN अपरेटर। यो अपरेटर विशेष दायरा भित्र डेटा पर्छ कि पर्दैन जाँच गर्दा अत्यन्त उपयोगी हुन्छ। यो संख्याहरू, मितिहरू, र स्ट्रिङहरूमा लागू गर्न सकिन्छ, जसले डेटा फिल्टरिङ र पुन: प्राप्ति कार्यलाई प्रभावकारी बनाउने शक्तिशाली उपकरण बनाउँछ। यस लेखमा, हामी MySQL को BETWEEN अपरेटर कसरी प्रयोग गर्ने, व्यावहारिक उदाहरणहरू प्रदान गर्ने, र ध्यानमा राख्नुपर्ने महत्वपूर्ण बुँदाहरूलाई उजागर गर्नेछौं।
२. BETWEEN अपरेटरको आधारभूत सिन्ट्याक्स
BETWEEN अपरेटर के हो?
BETWEEN अपरेटर WHERE क्लजमा प्रयोग गरिन्छ, जसले स्तम्भको मान निर्दिष्ट दायरा भित्र पर्छ कि पर्दैन जाँच गर्छ। यसको आधारभूत सिन्ट्याक्स यस प्रकार छ:
SELECT column_name
FROM table_name
WHERE column_name BETWEEN start_value AND end_value;
उदाहरणका लागि, यदि तालिकामा कर्मचारीहरूको उमेर संग्रहित छ भने, तपाईं यो अपरेटर प्रयोग गरी निश्चित उमेर दायरामा पर्ने मात्र कर्मचारीहरू निकाल्न सक्नुहुन्छ।
नकारात्मक रूप: NOT BETWEEN
यदि तपाईंलाई निर्दिष्ट दायरा बाहिरका मानहरू खोज्न आवश्यक छ भने, नकारात्मक रूप NOT BETWEEN प्रयोग गर्न सक्नुहुन्छ:
SELECT column_name
FROM table_name
WHERE column_name NOT BETWEEN start_value AND end_value;
३. संख्यात्मक दायरा फिल्टरिङ
संख्याहरूसँग BETWEEN प्रयोग गर्दै
BETWEEN अपरेटर संख्यात्मक दायरा फिल्टर गर्दा धेरै उपयोगी हुन्छ। उदाहरणका लागि, यदि तपाईं 50,000 देखि 100,000 सम्मको तलब भएका कर्मचारीहरू निकाल्न चाहनुहुन्छ भने, क्वेरी यस प्रकार लेख्न सक्नुहुन्छ:
SELECT employee_id, name, salary
FROM employees
WHERE salary BETWEEN 50000 AND 100000;
नमूना डेटा:
कर्मचारी_आईडी | name | वेतन |
|---|---|---|
1 | Sato | 45000 |
2 | Suzuki | 55000 |
3 | ताकाहाशी | 75000 |
4 | Tanaka | 120000 |
परिणाम:
कर्मचारी_आईडी | name | वेतन |
|---|---|---|
२ | Suzuki | 55000 |
3 | ताकाहाशी | 75000 |
यस क्वेरीमा, केवल 50,000 देखि 100,000 सम्मको तलब भएका कर्मचारीहरू चयन गरिन्छ।
तुलना अपरेटरहरू बनाम BETWEEN
उही शर्त तुलना अपरेटरहरू प्रयोग गरेर पनि यसरी व्यक्त गर्न सकिन्छ:
SELECT employee_id, name, salary
FROM employees
WHERE salary >= 50000 AND salary <= 100000;
BETWEEN प्रयोग गर्दा क्वेरी छोटो र पढ्न सजिलो हुन्छ। यो विशेष गरी धेरै दायरा शर्तहरू सम्हाल्दा उपयोगी हुन्छ।

४. मिति दायरा फिल्टरिङ
मितिहरूसँग BETWEEN प्रयोग गर्दै
BETWEEN अपरेटर मिति दायरामा पनि लागू गर्न सकिन्छ। उदाहरणका लागि, 1 जनवरी 2024 देखि 31 डिसेम्बर 2024 सम्मको अर्डरहरू प्राप्त गर्न, तपाईं यसरी लेख्न सक्नुहुन्छ:
SELECT order_id, customer_id, order_date
FROM orders
WHERE order_date BETWEEN '2024-01-01' AND '2024-12-31';
नमूना डेटा:
order_id | ग्राहक_पहिचान | order_date |
|---|---|---|
1 | 101 | 2024-01-15 |
2 | 102 | 2024-05-30 |
3 | 103 | 2025-03-01 |
परिणाम:
order_id | ग्राहक_पहिचान | order_date |
|---|---|---|
1 | 101 | 2024-01-15 |
2 | 102 | 2024-05-30 |
उपरोक्त जस्तै, BETWEEN अपरेटर निर्दिष्ट मिति दायरामा डेटा निकाल्छ।
समय डेटा ह्यान्डल गर्दै
यदि मिति स्तम्भमा समय मानहरू पनि समावेश छन् भने, तपाईंले सावधानी अपनाउनुपर्छ। उदाहरणका लागि, यदि order_date स्तम्भ DATETIME प्रकारको छ भने, BETWEEN प्रयोग गर्दा सुरु मितिको मध्यरात (00:00:00) देखि अन्त्य मितिको अर्को दिनको मध्यरातसम्मका मानहरू समावेश हुन्छन्। पूर्ण दिन कभर गर्न, समय घटकलाई स्पष्ट रूपमा निर्दिष्ट गर्नुहोस्:
WHERE order_date BETWEEN '2024-01-01 00:00:00' AND '2024-12-31 23:59:59';
५. स्ट्रिङ दायरा फिल्टरिङ
स्ट्रिङहरूसँग BETWEEN प्रयोग गर्दै
BETWEEN अपरेटर स्ट्रिङ डेटा मा पनि लागू गर्न सकिन्छ। उदाहरणका लागि, यदि तपाईं ‘A’ देखि ‘M’ सम्म वर्णक्रम अनुसार नाम पर्ने उत्पादनहरू खोज्न चाहनुहुन्छ भने, क्वेरी यस प्रकार देखिन्छ:
SELECT product_id, product_name
FROM products
WHERE product_name BETWEEN 'A' AND 'M';
नमूना डेटा:
उत्पाद ID | उत्पादन नाम |
|---|---|
1 | Apple |
2 | Banana |
3 | Mango |
4 | Orange |
परिणाम:
उत्पादन_पहिचान | उत्पादन नाम |
|---|---|
1 | Apple |
२ | Banana |
3 | Mango |
वर्णक्रमीय क्रम विचारहरू
BETWEEN प्रयोग गरी स्ट्रिङ फिल्टर गर्दा, मूल्यांकन वर्णक्रम अनुसार हुन्छ भन्ने कुरा याद राख्नुहोस्। साथै, डाटाबेसको कोलेशन सेटिङ अनुसार केस‑सेन्सिटिभिटी लागू हुन सक्छ। उदाहरणका लागि, 'a' र 'A' फरक मानहरू रूपमा व्यवहार हुन सक्छ। स्ट्रिङ दायरा संग काम गर्दा सधैं कोलेशन सेटिङ जाँच गर्नुहोस्।
६. BETWEEN अपरेटरमा महत्वपूर्ण टिप्पणीहरू
दायरा मानहरूको क्रम
दायरा मानहरूको क्रममा सावधान रहनुहोस्। यदि सुरु मान अन्त्य मानभन्दा ठूलो छ भने, क्वेरीले अनपेक्षित नतिजा दिन सक्छ:
SELECT *
FROM table_name
WHERE column_name BETWEEN 100 AND 50; -- Unintended result
साथै, याद राख्नुहोस् कि BETWEEN दायरा दुवै अन्त्यहरू समावेशी हुन्छ, त्यसैले आफ्नो मानहरू सावधानीपूर्वक चयन गर्नुहोस्।
अनुक्रमणिका र क्वेरी प्रदर्शन
BETWEEN अपरेटर सामान्यतया तुलना अपरेटरजस्तै कार्य गर्दछ। तथापि, प्रदर्शन अनुकूलन गर्न उचित अनुक्रमणिका आवश्यक छ। उदाहरणका लागि, यदि तपाईं मिति स्तम्भमा अनुक्रमणिका लागू गर्नुहुन्छ भने, त्यस स्तम्भमा BETWEEN प्रयोग गर्ने क्वेरीहरू अधिक प्रभावकारी रूपमा कार्यान्वयन हुनेछन्।
७. व्यावहारिक क्वेरीहरू र प्रयोग केसहरू
बहु स्तम्भहरूमा BETWEEN प्रयोग गर्दै
तपाईंले बहु स्तम्भहरूमा BETWEEN शर्तहरू संयोजन गर्न पनि सक्नुहुन्छ। उदाहरणका लागि, यदि तपाईं मूल्य र स्टक दायरा दुवैको आधारमा उत्पादनहरू फिल्टर गर्न चाहनुहुन्छ भने, तपाईं यसरी लेख्न सक्नुहुन्छ:
SELECT product_name, price, stock
FROM products
WHERE price BETWEEN 1000 AND 5000
AND stock BETWEEN 50 AND 200;
यो क्वेरीले १००० र ५००० बीचको मूल्य भएका उत्पादनहरू, तथा ५० र २०० बीचको स्टक स्तर भएका उत्पादनहरू प्राप्त गर्दछ।
NOT BETWEEN को व्यावहारिक प्रयोग
NOT BETWEEN को नकारात्मक रूप प्रयोग गरेर, तपाईं सजिलैसँग निश्चित दायरा बाहिरको डेटा निकाल्न सक्नुहुन्छ। उदाहरणका लागि, ५०,००० भन्दा कम वा १,००,००० भन्दा बढी तलब भएका कर्मचारीहरू पत्ता लगाउन, तपाईं यसरी लेख्न सक्नुहुन्छ:
SELECT employee_id, name, salary
FROM employees
WHERE salary NOT BETWEEN 50000 AND 100000;
परिणाम:
कर्मचारी_आईडी | name | वेतन |
|---|---|---|
1 | Sato | 45000 |
4 | Tanaka | 120000 |
यो क्वेरीले ५०,००० र १,००,००० बीच नपर्ने तलब भएका कर्मचारीहरू प्राप्त गर्दछ। NOT BETWEEN प्रयोग गर्दा विपरीत शर्त लागू गर्न सजिलो हुन्छ।
८. क्वेरीहरूको दृश्यात्मक उदाहरणहरू
क्वेरी परिणामहरूलाई अधिक सहज बनाउन, दृश्यात्मक आरेखहरू उपयोगी हुन सक्छन्। उदाहरणका लागि, तपाईं BETWEEN को प्रभाव यसरी चित्रण गर्न सक्नुहुन्छ:
Price Range: [----- 1000 ---- 5000 -----]
Product A Price: 3000 (Inside Range)
Product B Price: 6000 (Outside Range)
यस्ता चित्रणहरूले मान क्वेरीमा निर्दिष्ट दायरा भित्र पर्छ कि पर्दैन बुझ्न सजिलो बनाउँछन्।
९. सारांश
BETWEEN अपरेटर MySQL मा दायरा-आधारित खोजहरूको लागि एक शक्तिशाली उपकरण हो। यसलाई संख्यात्मक, मिति, र स्ट्रिङ डेटा मा लागू गर्न सकिन्छ, जसले तपाईंलाई संक्षिप्त र प्रभावकारी क्वेरीहरू लेख्न अनुमति दिन्छ। तथापि, यसको विशेषताहरू—जस्तै सिमाना मानहरूको समावेशिता र उचित अनुक्रमणिकाको महत्व—बुझ्न आवश्यक छ, ताकि अनपेक्षित परिणामहरू नआउन्। यो ज्ञान लागू गरेर, तपाईं क्वेरी प्रदर्शन अनुकूलन गर्न र आवश्यक डेटा मात्र अधिक प्रभावकारी रूपमा निकाल्न सक्नुहुन्छ।
१०. सन्दर्भहरू
थप विवरण र उन्नत प्रयोग केसहरूका लागि, तपाईं आधिकारिक MySQL दस्तावेजीकरण वा विशेष डेटाबेस पुस्तकहरूलाई सन्दर्भ गर्न सक्नुहुन्छ। साथै, आफैं क्वेरीहरू प्रयोग गरेर प्रयोग गर्नु BETWEEN अपरेटर कसरी काम गर्छ भन्ने बुझाइलाई गहिरो बनाउने उत्तम तरिकाहरू मध्ये एक हो।


