スキップしてコンテンツを表示

JSONataを使った文字列への埋め込み

0

StepFunctionsで以下のようにlambdaの出力結果を変数を登録したあとに "Assign": { "val1": "{% $states.result.Payload.val1 %}", "val2": "{% $states.result.Payload.val2 %}" },

Passステートメントで変数を文字列に埋め込んでMapへ渡す配列を作っていますが上手くいきません { "Type": "Pass", "QueryLanguage": "JSONata", "Next": "Success", "Output": { "sql": [ { "Sql": "select * from table where val = {% val1%}" }, { "Sql": "select * from table where val = {% val2%}" } ] } } このような指定は可能でしょうか?

質問済み 1年前853ビュー
1回答
0
承認された回答

文字列を結合する場合 & 演算子をご利用いただくことが可能でございます。 また、変数をご利用いただく場合、$val1 といった形式にて指定いただく必要がございます。 そのため、Pass ステートの Output にて下記のような指定をいただくことで変数を使った文字列結合が可能でございます。

{
	"sql": [
		{
			"Sql": "{% 'select * from table where val = ' & $val1 %}"
		},
		{
			"Sql": "{% 'select * from table where val = ' & $val2 %}"
		}
	]
}

もし、上記にて期待通りの動作とならない場合には、ご質問いただいた内容の回答のために AWS サポートへサポートケースを作成いただけますでしょうか。 お手数をおかけし恐れ入りますが、詳細に調査をさせていただくために依頼させていただいております。

以下のリンクよりサポートケースを作成いただけます。

https://console.aws.amazon.com/support/home#/case/create

どうぞよろしくお願いいたします。

AWS
サポートエンジニア
回答済み 1年前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

関連するコンテンツ