SQLでJSONオブジェクトをマージする方法 (2023/11/25)
SQLでJSONオブジェクトをマージする方法 (2023/11/25)
https://talkapex.com/how-to-merge-json-objects-in-sql
APEX を使用する場合、特に REST API とやり取りするときに、JSON データ構造の処理は一般的なタスクです。アプリケーションでデフォルト構成を使用し、カスタマイズを許可する場合など、1 つの JSON オブジェクトを別のオブジェクトにマージまたはレイヤー化する必要がある場合があります。この機能は通常、optionsパラメータを使用して JavaScript 関数で実現されます。
json_mergepatch関数を使用すると、SQL でこれを簡単に実行できます。次の例では、JSON オブジェクトに変更を加え、項目を追加する方法を示しています。
select
json_mergepatch(
-- default value
'
{
"foo": 123,
"bar": {
"firstName": "default",
"lastName": "default"
}
}
',
-- custom value
-- replace "lastName"
-- adds "middleName"
-- adds "language"
'
{
"bar": {
"lastName": "dsouza",
"middleName": "giffy"
},
"language": "english"
}
'
-- If you your resulting JSON will be larger than 4000 then return a clob by uncommented below
-- returning clob
--
-- The "pretty" keyword is optional and just helps with display
pretty
) demo
from sys.dual;
結果の JSON オブジェクトは次のようになります。
{
"foo": 123,
"bar": {
"firstName": "default",
"lastName": "dsouza",
"middleName": "giffy"
},
"language": "english"
}
コメント
コメントを投稿