7

次のようなデータがあります。

{"key": {"name":"hi", "size":10}}

「キー」は動的な値です。修正されていません。この JSON パスにアクセスnameして使用できます。size

*.name
*.size

JSONパスで「キー」自体の値を取得するにはどうすればよいですか? *データの行全体が表示され、パーサーで「要素が見つかりません」$と表示されます。@

JSON 入力ステップを使用して、Pentaho でこれを実行しようとしています。

4

3 に答える 3

4

$.*親オブジェクトのすべての要素を提供します。例では、次のようなものが得られます。

[
   {
      "name":"hi",
      "size":10
   }
]

によると:http://jsonpath.curiousconcept.com/

于 2012-11-12T09:45:10.053 に答える
1

これは、あなたが言うように JSONPath を使用するため、Pentaho JSON 入力ステップでは実行できません。別の方法で行う必要があります。たとえば、次のようにしますModified Java Script Value

var obj = JSON.parse(json);
var keys = Object.keys(obj);
于 2016-04-04T08:12:05.873 に答える
0

あなたの質問を解釈する1つの方法と同じ問題がありました.入力で["key"]指定することなく、実際に例から出力を取得したい場合。その場合は...somequery..."key"をまったく使用しないでください。を使用するだけです。私はJavascriptで作業しており、Pentahoに慣れていないため、私の答えがあなたの状況に当てはまるかどうかわかりません.jsonPath(data,)Object.keys(data)

于 2013-09-16T11:57:54.117 に答える