mroongaで論理を扱う場合、mroonga_commandでラッピングしてしまうのが手っ取りバ早そうです。
...もっとスマートな方法をご存知の方はお気軽にトマホークを御投擲下さい(震え声
AND(論理積)検索
両方一致のAND検索
mysql> select mroonga_command("select professors --output_columns name --filter 'name @ \"石\" && name @ \"田\"'"); +--------------------------------------------------------------------------------------------------------+ | mroonga_command("select actors --output_columns name --filter 'name @ \"石\" && name @ \"田\"'") | +--------------------------------------------------------------------------------------------------------+ | [[[2],[["name","ShortText"]],["石田 三成"],["石田 純一"]]] | +--------------------------------------------------------------------------------------------------------+ 1 row in set (0.13 sec)
OR(論理和)検索
どちらか一致のOR検索。
mysql> select mroonga_command("select professors --output_columns name --filter 'name @ \"石\" || name @ \"田\"'"); +--------------------------------------------------------------------------------------------------------------------------------------------------------+ | mroonga_command("select professors --output_columns name --filter 'name @ \"石\" AND name @ \"田\"'") | +--------------------------------------------------------------------------------------------------------------------------------------------------------+ | [[[5],[["name","ShortText"]],["石田 三成"],["石田 純一"],["石橋 貴明"],["石橋 凌"],["石川 五右衛門"]]] | +--------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.04 sec)