EQLのBETWEEN演算子を使用して、「間」範囲フィルタ問合せを作成します。
「間」範囲フィルタ問合せは、下限と上限の間にある標準または管理属性値を持つレコードを返します。
attribute BETWEEN lowerBound AND upperBound
attributeは、値がテストされる属性です。
BETWEENは境界値で、attributeの値がlowerBoundの値以上、upperBoundの値以下の場合、TRUEを返します。
attributeのサポートされるデータ・タイプと範囲値は、integer、double、dateTime、duration、time、stringおよびBooleanです。1つの例外を除き、attributeは、lowerBoundおよびupperBoundと同じデータ・タイプである必要があります。例外として、integerはdoubleに昇格するため、integerとdoubleの組合せを使用できます。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<Request xmlns="http://www.endeca.com/MDEX/conversation/3/0">
<Language>es</Language>
<State>
<DataSourceFilter Id="DataFlt">
<filterString>COUNTRY_NAME = 'Spain'</filterString>
</DataSourceFilter>
<SelectionFilter Id="BtwFlt">
<filterString>UNIT_PRICE BETWEEN 500 AND 1000</filterString>
</SelectionFilter>
</State>
<RecordListConfig Id="Recs" MaxPages="20">
<RecordsPerPage>5</RecordsPerPage>
</RecordListConfig>
</Request>
</soapenv:Body>
</soapenv:Envelope>
この例では、最初にCOUNTRY_NAME割当てが'Spain'のレコードにデータ・ソース・レコードを限定し、UNIT_PRICE値が500から1000のレコードをすべて返します。両方の境界要素が含まれるため、返されるレコードには、UNIT_PRICE値が500と1000のレコードが含まれます。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<Request xmlns="http://www.endeca.com/MDEX/conversation/3/0">
<State>
<DataSourceFilter Id="DataFlt">
<filterString>AMOUNT_SOLD > 100</filterString>
</DataSourceFilter>
<SelectionFilter Id="BtwFlt">
<filterString>COUNTRY_NAME BETWEEN 'Argentina' AND 'Japan'</filterString>
</SelectionFilter>
</State>
<RecordListConfig Id="Recs" MaxPages="20">
<RecordsPerPage>5</RecordsPerPage>
</RecordListConfig>
</Request>
</soapenv:Body>
</soapenv:Envelope>
この例では、最初にAMOUNT_SOLD割当てが100以上のレコードにデータ・ソース・レコードを限定し、COUNTRY_NAME割当て値がアルゼンチンから日本までの国名(カナダやイタリアなど)のレコードをすべて返します。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<Request xmlns="http://www.endeca.com/MDEX/conversation/3/0">
<Language>en</Language>
<State>
<SelectionFilter>
<filterString>SOME i IN Quantity SATISFIES (i BETWEEN 10 AND 30)</filterString>
</SelectionFilter>
</State>
<RecordListConfig Id="recs">
<Column>Quantity</Column>
</RecordListConfig>
</Request>
</soapenv:Body>
</soapenv:Envelope>
この例では、Quantity割当てが10から30までのレコードをすべて返します。