.. -*- rst -*-

.. highlightlang:: none

.. groonga-command
.. database: spec_query_syntax

Query syntax
============

TODO: revised.

一般的なWebページの検索フォームで使われるような書式を使って検索条件を指定することができます。これをクエリ構文と呼びます。

クエリ構文は「条件式」と条件式を組み合わせる「結合式」からなります。

条件式
------

以下の条件式が使用できます。

``文字列``
^^^^^^^^^^

全文検索条件(デフォルト検索対象カラムの値が指定された文字列を含んでいる)

``"文字列"``
^^^^^^^^^^^^

フレーズ検索条件(デフォルト検索対象カラムの値が指定されたフレーズを含んでいる)

``カラム名:値``
^^^^^^^^^^^^^^^

一致条件( ``カラム値 == 値`` )

``カラム名:!値``
^^^^^^^^^^^^^^^^

不一致条件( ``カラム値 != 値`` )

``カラム名:<値``
^^^^^^^^^^^^^^^^

比較条件( ``カラム値 < 値`` )

``カラム名:>値``
^^^^^^^^^^^^^^^^

比較条件( ``カラム値 > 値`` )

``カラム名:<=値``
^^^^^^^^^^^^^^^^^

比較条件( ``カラム値 <= 値`` )

``カラム名:>=値``
^^^^^^^^^^^^^^^^^

比較条件( ``カラム値 >= 値`` )

``カラム名:@文字列``
^^^^^^^^^^^^^^^^^^^^

全文検索条件(カラム値が指定された文字列を含んでいる)

結合演算子
----------

複数の条件式を結合するために以下の演算子が使用できます。

``a OR b``
^^^^^^^^^^

論理和( ``a`` と ``b`` といずれかの条件がマッチする)

``a + b``
^^^^^^^^^

論理積( ``a`` と ``b`` の両方がマッチする)

``a - b``
^^^^^^^^^

``a`` にマッチし、 ``b`` にはマッチしない

``(...)``
^^^^^^^^^

複数の条件をまとめる
