【发布时间】:2018-11-11 11:24:49
【问题描述】:
我需要从嵌套 json 下方过滤名称和城市。
[
{
"Employee": [
{
"name": "John",
"Gender": "Male"
}
],
"Info": {
"location": {
"city": "Kuvala",
"continent": "Asia",
"country": "Singapore"
}
}
},
{
"Employee": [
{
"name": "Mike",
"Gender": "Male"
}
],
"Info": {
"location": {
"city": "Dhabi",
"continent": "Asia",
"country": "Dubai"
}
}
}
]
我的代码
CREATE ASSEMBLY IF NOT EXISTS [Newtonsoft.Json] FROM @"/Assemblies/Newtonsoft.Json.dll";
CREATE ASSEMBLY IF NOT EXISTS [Microsoft.Analytics.Samples.Formats] FROM @"/Assemblies/Microsoft.Analytics.Samples.Formats.dll";
REFERENCE ASSEMBLY [Newtonsoft.Json];
REFERENCE ASSEMBLY [Microsoft.Analytics.Samples.Formats];
USING Microsoft.Analytics.Samples.Formats.Json;
DECLARE @InputFile string = @"/Source/example.blob";
DECLARE @output string = @"/Output/output.csv";
@json =
EXTRACT Employee String,
Info String
FROM @InputFile
USING new Microsoft.Analytics.Samples.Formats.Json.JsonExtractor("*");
@CreateJSONTuple =
SELECT JsonFunctions.JsonTuple(Employee) AS EmployeeData,
JsonFunctions.JsonTuple(Info) AS InfoData
FROM @json;
@result =
SELECT EmployeeData["name"] AS Name,
JsonFunctions.JsonTuple(InfoData, "location") AS LocationData
FROM @CreateJSONTuple;
OUTPUT @result
TO @output
USING Outputters.Csv(outputHeader : true, quoting : true);
我收到错误消息,说无法从 'Microsoft.Analytics.Types.Sql.SqlArray' 转换为 'string' 请帮忙。
请帮助我从中获取名称,城市。 这应该输出: 约翰·瓦拉拉 迈克·扎比
【问题讨论】:
-
您好,我们需要您付出一些努力。到目前为止你的 U-sql 脚本是什么?如果您根本没有任何线索,互联网上有很多例子。先从这些开始。
-
嗨@PeterBons,我已经更新了我的代码。我是新手,没有从初学者到专家级别的适当文档。这次请帮帮我。
-
请帮忙..,,
标签: azure azure-sql-database azure-data-lake u-sql