sorクエリ文法
7373 ワード
まず、照会はsorjに基づいている.sorjがよくわからないなら.ソロクエリ文に対する一つのapiパッケージとして考えられます.
sorのクエリは、実際にはselectというservletに文字型を着るパラメータです.例えば、
コード
http://192.168.1.107:8983/solr/collection1/select?q=*%3 A*&wt=xml&indent=true
説明番号はurlcodingによって、%3 Aになります.
ソロのソースコードを見たことがありません.しかし、selectというservletに対する要求はhttpclient方式によって実現されるはずです.
本題に入る:
まずは実用化が必要です. SolQueryオブジェクトは、クエリーに使用するパラメータセットです.
Javaコード
SolQuery q = new SolQuery(); q.setQuery(「TITLE:中国人」)
1、最も基本的なフィールドクエリ:
Javaコード
TITLE:中国人
ソロで調べていると、導入された値に対して単語を分けることができます.中国人は「中国」、「国人」、「中国人」に分かれるかもしれません.
三つのフレーズが含まれている文が検索されます.強制的にsorに単語を区別しないように要求します.フレーズに二重引用符をつけることができます.
Javaコード
TITLE:「中国人」
2、マルチフィールドまたは関係OR
Javaコード
TITLE:(「中国人」 AND アメリカ人です AND 「イギリス人」)
3.複数フィールドに含まれていない関係NOT
この文法は私の苦労するところです.以前はすでに多値orそうやって調べました.結果は違っています.書きます.
Javaコード
TITLE:(*) NOT インターネットの利用料が高いです NOT ブロードバンドの料金は不合理です. )
4.一つの範囲BETWEENを調べます.
Javaコード
NUM:[-90 TO 360 ] OR CREATEDUAT:[] + ダテ1 + " TO " + ダテ2 + "]
日付が変換され、dateが使用されます.
Javaコード
String ダテ1 = FastDateFormat.get Instance( "yyy-M-dd'T'H:mm:s.SSS'Z').format( c.get StartTime().getTime()
http://leonayx123.iteye.com/blog/1856127
sorのクエリは、実際にはselectというservletに文字型を着るパラメータです.例えば、
コード
http://192.168.1.107:8983/solr/collection1/select?q=*%3A*&wt=xml&indent=true
クエリーのフィールド書式は、一般的に次の通りです. フィールド名:フィールド値説明番号はurlcodingによって、%3 Aになります.
ソロのソースコードを見たことがありません.しかし、selectというservletに対する要求はhttpclient方式によって実現されるはずです.
本題に入る:
まずは実用化が必要です. SolQueryオブジェクトは、クエリーに使用するパラメータセットです.
Javaコード
SolrQuery q = new SolrQuery();
q.setQuery("TITLE: ");
1、最も基本的なフィールドクエリ:
Javaコード
TITLE:
つまり、調査フィールドはTITLEの値に「中国人」が含まれているすべての結果集です.ソロで調べていると、導入された値に対して単語を分けることができます.中国人は「中国」、「国人」、「中国人」に分かれるかもしれません.
三つのフレーズが含まれている文が検索されます.強制的にsorに単語を区別しないように要求します.フレーズに二重引用符をつけることができます.
Javaコード
TITLE:" "
これは「中国人」という言葉を含む値だけに戻ります.中国と中国人は帰らない.2、マルチフィールドまたは関係OR
Javaコード
TITLE:(" " AND " " AND " ")
3.複数フィールドに含まれていない関係NOT
この文法は私の苦労するところです.以前はすでに多値orそうやって調べました.結果は違っています.書きます.
Javaコード
TITLE:(* NOT " " NOT " " )
4.一つの範囲BETWEENを調べます.
Javaコード
NUM:[-90 TO 360 ] OR CREATED_AT:[" + date1 + " TO " + date2 + "]
数字と日付の種類に適用されます.日付が変換され、dateが使用されます.
Javaコード
String date1 = FastDateFormat.getInstance(
"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'").format(
c.getStartTime().getTime())
を使って変換します.慣用のyyy-M-dd HH:mm:sshttp://leonayx123.iteye.com/blog/1856127