JsonSetEx - 指令碼與圖表函數
JsonSetEx() 修改包含 JSON (JavaScript 物件標記法) 資料的字串。這可以透過路徑指定的新位置設定或插入 JSON 值。資料必須為有效的 JSON,但可以包含額外的空格或新行。
語法:
JsonSetEx(json, path, value, ...)
傳回的資料類型: 雙值
引數 | 描述 |
---|---|
json | 字串包含 JSON 資料。 |
path | 必須根據 RFC 6901 指定路徑。這允許建置 JSON 資料的內部屬性,而不必使用複雜的子字串或索引函數和串連。 |
value | 使用 JSON 格式的新字串值。 |
範例:
以下載入指令碼載入資料並將其格式化為 JSON 格式:
Data:
Load *,
JsonSetEx('{"fax":123}',
'/name', Name,
'/address', Address,
'/phone', Phone,
'/fax', FaxOrNull) AS Json;
LOAD *, If(Fax='-',Null(),Fax) AS FaxOrNull;
LOAD * INLINE [
Id, Name, Address, Phone, Fax
1, John Doe, Oak Way, 1 234 567, 1 234 568
2, Jane Doe, Maple Way, 123456, -
3, Mr Xavier, Spruce Way, 1-800-MRX
];
這會產生以下 JSON 資料:
{"name":"John Doe","address":"Oak Way","phone":"1 243 567","fax":"1 234 568"}
{"name":"Jane Doe","address":"Maple Way","phone":123456}
{"fax":"","name":"Mr Xavier","address":"Spruce Way","phone":"1-800-MRX"}