يحدد ما إذا كانت قيمة تعبير تقع ضمن نطاق معين من القيم أم لا. يمكنك استخدام عامل التشغيل هذا في جُمل SQL.
بناء الجملة
expr [Not] Betweenvalue1Andvalue2
يشمل بناء جملة عامل التشغيل Between...And ثلاثة أجزاء:
الجزء |
الوصف |
expr |
التعبير الذي يحدد الحقل الذي يحتوي على البيانات التي تريد تقييمها. |
value1, value2 |
التعبيرات التي تريد تقييم expr مقابلها. |
ملاحظات
إذا كانت قيمة expr بين value1 وvalue2 (شاملة)، يقوم عامل التشغيل Between...And بإرجاع True؛ وخلاف ذلك، يُرجع False. يمكنك تضمين العامل المنطقي Not لتقييم الشرط العكسي (أي إذا كان expr يقع خارج النطاق المحدد بواسطة value1 وvalue2).
قد تستخدم Between...And لتحديد ما إذا كانت قيمة حقل تقع ضمن نطاق رقمي معين أم لا. يحدد المثال التالي ما إذا تم نقل طلب إلى موقع داخل نطاق من الرموز البريدية أم لا. إذا كان الرمز البريدي بين 98101 و98199، تُرجع الدالة IIf "محلي". وبخلاف ذلك، تُرجع "غير محلي".
SELECT IIf(PostalCode Between 98101 And 98199, “Local”, “Nonlocal”) FROM Publishers
إذا كان expr أو value1 أو value2 قيمة خالية، يقوم عامل التشغيل Between...And بإرجاع قيمة Null.
نظراً لأن أحرف البدل، مثل *، تتم معاملتها كقيم حرفية، لا يمكنك استخدامها مع عامل التشغيل Between...And. على سبيل المثال، لا يمكنك استخدام *980 و*989 للبحث عن كافة الرموز البريدية التي تبدأ بـ 980 إلى 989. بدلاً من ذلك، لديك بديلان لتنفيذ ذلك. يمكنك إضافة تعبير إلى الاستعلام الذي يشمل الثلاثة أحرف على اليمين من حقل نصي واستخدام Between...And على تلك الأحرف. أو يمكنك إضافة قيم عليا ودنيا بأحرف إضافية — في هذه الحالة، 98000 إلى 98999 أو 98000 إلى 98999 – 9999 إذا كنت تستخدم رموز بريدية موسعّة. (يجب حذف – 0000 من القيم الدنيا لأنك إذا لم تفعل ذلك يتم إسقاط 98000 إذا كان لبعض الرموز البريدية مقاطع موسعّة ولم يكن للبعض الآخر مقاطع موسعّة.)