2016-05-17 14 views
3

データベース内の要素に要素範囲インデックスが設定されています。私はその要素に対して検索クエリを実行しようとしています。要素には文字列値が含まれています。特定の文字列値(値の範囲や日付ではありません)を検索する必要があります。 element-valueクエリとelement-rangeクエリの両方を使用することはできますが、indexはすでに存在していますが、両方のクエリが同じように実行されますか?このシナリオではelement-rangeの方が優れていますか?element-value-queryとelement-range-queryの比較

+0

以下の回答のいずれかがあなたの質問に回答した場合は、それを「承諾済み」としてマークできますか? –

答えて

4

範囲クエリが高速になります。

要素値のクエリは、ユニバーサルインデックスを使用し、それがメモリ

で一杯になっていない範囲クエリ、ユーザーの範囲であったインデックスを、それはメモリのインデックスであります。

範囲クエリは、データの拡大に伴って非常に高速になります。また、その要素に独特の用語がたくさんある場合は速くなります。

+0

Thanks @ tyler-replogle – Selva

3

range-queryは、value-queryとは異なる質問にも答えています。

値クエリは、一致する単語列を照会し、文字列に一致しません。デフォルトでは、これらの文字列もステムされているので、cts:element-value-query(xs:QName( "x")、 "be fine")は<x>Is finer</x>と一致します。正確にアンストアされていない値のないクエリを実行しない限り、フィルタリングされていない検索はスペースと句読点の違いを解決することもできません。

範囲照会(文字列上)は、特定の照合規則のルールに一致する文字列です。

関連する問題