すべてのプロダクト
Search
ドキュメントセンター

OpenSearch:クエリ句

最終更新日:Aug 21, 2026

クエリ句は、すべての検索リクエストにおいて必須の部分です。検索対象と検索先のインデックスフィールドを指定します。論理演算子を使用して複数の条件を組み合わせ、複雑なクエリを構築します。

たとえば、TEXT 型の title フィールドと subject フィールドを組み合わせて、複合インデックスフィールド default を作成できます。その後、インデックスフィールド default に基づいて検索し、title フィールドまたは subject フィールドにクエリが含まれるドキュメントを取得できます。

また、title フィールドのみを使用してインデックスフィールド title_search を作成することもできます。これにより、インデックスフィールド title_search に基づいて検索を実行すると、title フィールドに検索クエリが含まれるドキュメントのみが取得されます。

構文

クエリ句は、以下のいずれかの形式で記述します。

クエリタイプ構文
キーワード検索index:'<search query>' ^ boost
地理範囲検索index:'circle (<longitude>, <latitude>, <radius>)'
数値範囲検索index:[<value1>, <value2>]

パラメーター

パラメーター型必須説明
indexStringはい検索対象のインデックスフィールド。インデックススキーマを定義する際に設定します。
search queryStringはい検索する term またはフレーズ。一重引用符 (') または二重引用符 ("") で囲みます。
boostINTいいえクエリ条件の関連性の重み。有効値:0~99。デフォルト値:99。0 未満の値は 0 として、99 を超える値は 99 として扱われます。基本ソート式で exact_match_boost() が設定されている場合にのみ有効です。

論理演算子

次の演算子を使用して、複数のクエリ条件を組み合わせます。すべての演算子は、大文字でなければなりません。

演算子ロジック優先度 (低い順)例
RANK2番目の条件に一致するドキュメントがより上位にランク付けされます1 (最低)title:'cloud' RANK title:'search'
ORいずれかの条件に一致する必要があります2title:'cloud' OR title:'search'
AND両方の条件に一致する必要があります3title:'cloud' AND type:'1'
ANDNOT最初の条件に一致し、2番目の条件に一致するドキュメントは除外されます4title:'cloud' ANDNOT title:'storage'
()グルーピング — 最初に評価されます5 (最高)(title:'a' OR title:'b') AND type:'1'

| 文字は OR の代替形式です。

query=title:'北京大学'|'浙江大学'

フレーズクエリ

検索クエリを二重引用符で囲むと、フレーズクエリを実行できます。フレーズクエリでは、すべての検索語が連結され、分析の前後で同じ順序に配置されます。

query=title:"北京大学"

これにより、タイトルに「北京大学」がフレーズとして含まれるドキュメントのみが返されます。「北京の大学」を含むドキュメントは返されません。

例

単一フィールドによる検索

query=title:'北京大学'

AND:両方の条件に一致する必要があります

query=title:'北京大学' AND title:'浙江大学'

OR と AND:混合条件

query=(title:'北京大学' OR title:'浙江大学') AND type:'1'

ANDNOT と RANK:除外とブースト

query=(title:'北京大学' ANDNOT title:'清華大学') RANK title:'校長'
// 精密ソート式: text_relevance(title)

タイトルに「北京大学」を含み、「清華大学」を含まないドキュメントが返されます。その中で、タイトルに「校長」も含まれるドキュメントがより上位にランク付けされます。

ARRAY 型のインデックスフィールドの検索

// arr_index_1 は INT ARR フィールド上に構築されたインデックスです。
// arr_index_1 に値 1 が含まれるドキュメントを返します。
query=arr_index_1:'1'

注意事項

  • クエリ句は必須であり、空にすることはできません。

  • 検索クエリは、一重引用符 (') または二重引用符 ("") で囲む必要があります。引用符が欠落していると、クエリエラーが発生したり、予期しない結果になったりします。

  • TEXT と SHORT_TEXT フィールドのみを組み合わせて複合インデックスを作成できます。

  • 検索語がどのように分析され、トークン化されるかについては、「組み込みアナライザ」をご参照ください。

  • 地理範囲検索および数値範囲検索については、「範囲検索」をご参照ください。