「間」範囲フィルタ

EQLのBETWEEN演算子を使用して、「間」範囲フィルタ問合せを作成します。

「間」範囲フィルタ問合せは、下限と上限の間にある標準または管理属性値を持つレコードを返します。

BETWEEN演算子の構文

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の組合せを使用できます。

「間」の例

次の最初の例では、doubleタイプの属性(UNIT_PRICE)の「間」範囲フィルタ問合せを示します。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Header/>
   <soapenv:Body>
      <Request xmlns="http://www.endeca.com/MDEX/conversation/2/0">
        <Language>es</Language>
        <State>
          <DataSourceFilterString>COUNTRY_NAME = 'Spain'</DataSourceFilterString>
          <SelectionFilterString>UNIT_PRICE BETWEEN 500 AND 1000</SelectionFilterString>
        </State>
        <ContentElementConfig xsi:type="RecordListConfig"
          HandlerFunction="RecordListHandler"
          HandlerNamespace="http://www.endeca.com/MDEX/conversation/handlers/2010"
          Id="RecordList" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        </ContentElementConfig>
       </Request>
    </soapenv:Body>
</soapenv:Envelope>

この例では、最初にCOUNTRY_NAME割当てが'Spain'のレコードにデータ・ソース・レコードを限定し、UNIT_PRICE値が500から1000のレコードをすべて返します。両方の境界要素が含まれるため、返されるレコードには、UNIT_PRICE値が500と1000のレコードが含まれます。

次の2番目の例では、stringタイプの属性(COUNTRY_NAME)の「間」範囲フィルタ問合せを示します。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
   <soapenv:Header/>
   <soapenv:Body>
      <Request xmlns="http://www.endeca.com/MDEX/conversation/2/0">
        <State>
          <DataSourceFilterString>AMOUNT_SOLD > 100</DataSourceFilterString>
          <SelectionFilterString>COUNTRY_NAME BETWEEN 'Argentina' AND 'Japan'</SelectionFilterString>
        </State>
        <ContentElementConfig xsi:type="RecordListConfig"
          HandlerFunction="RecordListHandler"
          HandlerNamespace="http://www.endeca.com/MDEX/conversation/handlers/2010"
          Id="RecordList" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
        </ContentElementConfig>
       </Request>
    </soapenv:Body>
</soapenv:Envelope>

この例では、最初にAMOUNT_SOLD割当てが100以上のレコードにデータ・ソース・レコードを限定し、COUNTRY_NAME割当て値がアルゼンチンから日本までの国名(カナダやイタリアなど)のレコードをすべて返します。