Solrの検索クエリーとMySQLの検索クエリーの対応
Solrで検索クエリーを作るときにどうしてもSQLクエリが先に出てしまうので対応をメモ。
クエリーパラメータでいうとqですね。
| 検索式 | MySQL*1 | Solr |
|---|---|---|
| 一致検索 | WHERE title="foo" | title:foo |
| 全件 | (where無し) | *:* |
| AND | WHERE title="foo" AND price=200 | title:foo AND price:200 |
| OR | WHERE title="foo" OR price=200 | title:foo OR price:200 |
| NOT | WHERE title="foo" AND price<>200 | title:foo NOT price:200 |
| 範囲指定(未満) | WHERE price < 200 | price:{* TO 200} |
| 範囲指定(以下) | WHERE price <= 200 | price:[* TO 200] |
| 範囲指定 | WHERE price > 10 AND price < 200 | price:{10 TO 200} |
| 先頭一致検索 | WHERE title LIKE "foo*" | title:foo* |