多値プロパティーの入力パラメーターとして、1つ以上の値を使用してコンテンツ・リポジトリー内で検索したい 次のようなものがあります。主タイプ 'nt:unstructured'プロパティ 'multiprop'(多値プロパティ)には、値「one」と「two」が含まれています。JCR SQL2複数値プロパティー検索
queryString.createQueryに渡されるqueryStringはどのようにloookする必要がありますか?
ありがとうございます。
多値プロパティーの入力パラメーターとして、1つ以上の値を使用してコンテンツ・リポジトリー内で検索したい 次のようなものがあります。主タイプ 'nt:unstructured'プロパティ 'multiprop'(多値プロパティ)には、値「one」と「two」が含まれています。JCR SQL2複数値プロパティー検索
queryString.createQueryに渡されるqueryStringはどのようにloookする必要がありますか?
ありがとうございます。
他の基準と同じように、複数の値を持つプロパティで条件を扱うことができます。 「someProp」プロパティは、その後、少なくとも一つのノードを複数の値を持つ場合
SELECT * FROM [nt:unstructured] WHERE someProp = 'white dog'
を:たとえば、次のクエリは、「someProp」プロパティに「白い犬」の値を持つすべてのノードを検索します基準を満たす値が結果に含まれます。
複数値のプロパティの複数の値を持つノードを見つけるには、単純に複数の条件をANDで結合します。たとえば、次のクエリでは、指定された値の両方を持っているすべてのノードを返します。
SELECT * FROM [nt:unstructured] WHERE someProp = 'white dog'
AND someProp = 'black dog'
事業者のいずれもが「LIKE」を含め、動作します:
SELECT * FROM [nt:unstructured] WHERE someProp LIKE '%white%'
AND someProp LIKE '%black%'
他の組み合わせが可能である、とコース。
ありがとうございます。質問:してください:これらの2つのソリューションは、よりperformantですか?それとも同じパフォーマンスが得られるはずですか? – silverb77
答えを得る前に、someProp LIKE '%black%'のようなものを試してみましたが、これはむしろ遅いようです...これは、=の代わりにLIKEを使用していたからですか? – silverb77
最終的に質問してください:パフォーマンスについて考えると、getNodeを使って "手動"検索を行い、入力パラメータに対して各プロパティの値をチェックするか、JCR SQL2 SELECTを実行しますか?どうもありがとう。 – silverb77