次の Java コードがあるとします。
String statement = "SELECT `path` FROM test-bucket;";
N1qlQueryResult queryResult = bucket.query(N1qlQuery.simple(statement);
for (N1qlQueryRow n1qlQueryRow : queryResult) {
System.out.println(n1qlQueryRow.toString());
}
そして、次の例のように構造化された json ファイルのみを含む Couchbase のテストバケット:
{
"path": "C:\\example\\filename.txt",
"outer_array": [
{
"inner_array": [
{
"value": 1,
},
{
"value": 2,
}
]
},
{
"inner_array": [
{
"value": 3,
}
]
}
]
}
outer_array
とそれぞれvalue
をinner_array
単純な文字列で繰り返し処理したいと思います。少なくとも 1 つの値が の条件を満たす場合、statement
をpath
に追加する必要がありqueryResult
ます。は次のstatement
ようになります (この例は間違っています)。
statement = "SELECT `path` FROM test-bucket WHERE outer_array.inner_array.value=1;";
しかし、これは明らかに機能しません。では、それぞれを確認するために何をしなければなりませんvalue
か?