BETWEEN演算子

BETWEEN演算子は、入力式値が下限式と上限式の間(境界値を含む)にあるかどうかを確認するために使用します。これは次と同等です:
low_bound_expression <= input_expression AND input_expression <=
    high_bound_expression

この演算では、両方の式でTRUEが返された場合は、TRUE値が返されます。どちらかの式がNULLであるかNULL値になる場合は、この演算の結果もNULLになります。この演算では、一方の式でFALSEが返された場合は、FALSE値が返されます。1つの式で複数の項目が返された場合は、エラーが発生します。これは、比較演算子は一連の複数の項目に対しては機能しないためです。

例1: 予約コードが範囲内にある乗客の詳細および荷物経路情報をフェッチします。
SELECT fullname AS FULLNAME,
confNo AS RESERVATION,
s.bagInfo.routing AS ROUTINGINFO 
FROM BaggageInfo s
WHERE confNo BETWEEN 'LE6J4Z' and 'ZG8Z5N'
ORDER BY confNo

説明: 乗客ごとに1つの予約コード(confNo)があります。この問合せでは、予約コードがLE6J4ZからZG8Z5Nまでの範囲にある乗客の詳細、予約コードおよび荷物経路詳細をフェッチします。WHERE句でBETWEEN演算子を使用して、入力文字列の下限値および上限値と、confNo値の文字列比較を実行します。範囲内の行のみが選択され、出力で表示されます。

出力:
{"FULLNAME":"Adam Phillips","RESERVATION":"LE6J4Z","ROUTINGINFO":"MIA/LAX/MEL"}
{"FULLNAME":"Elane Lemons","RESERVATION":"LN0C8R","ROUTINGINFO":"MXP/CDG/SLC/BZN"}
{"FULLNAME":"Gerard Greene","RESERVATION":"MC0E7R","ROUTINGINFO":"SFO/IST/ATH/JTR"}
{"FULLNAME":"Henry Jenkins","RESERVATION":"MZ2S5R","ROUTINGINFO":"SFO/ORD/FRA"}
{"FULLNAME":"Omar Harvey","RESERVATION":"OH2F8U","ROUTINGINFO":"MEL/LAX/MIA"}
{"FULLNAME":"Kendal Biddle","RESERVATION":"PQ1M8N","ROUTINGINFO":"JFK/IST/VIE"}
{"FULLNAME":"Zina Christenson","RESERVATION":"QB1O0J","ROUTINGINFO":"MIA/LAX/MEL"}
{"FULLNAME":"Lorenzo Phil","RESERVATION":"QI3V6Q","ROUTINGINFO":["SFO/IST/ATH/JTR","SFO/IST/ATH/JTR"]}
{"FULLNAME":"Lucinda Beckman","RESERVATION":"QI3V6Q","ROUTINGINFO":"SFO/IST/ATH/JTR"}
{"FULLNAME":"Michelle Payne","RESERVATION":"RL3J4Q","ROUTINGINFO":"SFO/IST/ATH/JTR"}
{"FULLNAME":"Teena Colley","RESERVATION":"TX1P7E","ROUTINGINFO":"MSQ/FRA/HKG"}
{"FULLNAME":"Fallon Clements","RESERVATION":"XT1O7T","ROUTINGINFO":"MXP/CDG/SLC/BZN"}
{"FULLNAME":"Raymond Griffin","RESERVATION":"XT6K7M","ROUTINGINFO":"MSQ/FRA/HKG"}
{"FULLNAME":"Dierdre Amador","RESERVATION":"ZG8Z5N","ROUTINGINFO":"JFK/MAD"}
例2: 2019年2月15日から2週間以内にMIAから旅行した乗客を検索します。
SELECT fullname,
FROM BaggageInfo bag
WHERE exists bag.bagInfo.flightLegs[$element.fltRouteSrc = "MIA"
AND
$element.flightDate BETWEEN "2019-02-15T00:00:00Z" and "2019-03-02T00:00:00Z"]

説明:この問合せでは、2019年2月15日から2019年3月2日までの間にMIAから旅行した乗客の詳細をフェッチします。bagInfo JSONフィールド内のflightDateフィールドには、目的地への移動日が含まれます。BETWEEN演算子を使用して、乗客データ内のflightDateを、指定した日付の上限から下限までの範囲と比較します。flightDateは文字列であり、指定された日付(これも文字列値)と直接比較されます。この範囲内にリストされている乗客レコードを、AND演算子を使用して出発駅としてMIAのみを含めることでさらに絞り込みます。フライト出発地は、フライト出発地またはいずれかのトランジット空港の可能性があります。

出力:
{"fullname":"Zulema Martindale"}
{"fullname":"Joanne Diaz"}