Я хочу запросить ниже входные данные JSON, полученные от IotHub в потоковой аналитике
{
"DeviceId": "12355",
"Message": {
"TimeStamp": [{"Time": "1"}, {"Time": "2"}],
"Streak": "4",
"Checkin": [{"Time": "3"}, {"Time": "4"}],
"Status": ""
}
}
Я использовал приведенный ниже запрос, который дает мне четыре выхода после применения кросса. Я просто хочу два вывода
Я хочу, чтобы мой вывод был в формате ниже.
DeviceID Streak TimeStamp Checkin Status
"12355" "4" "1" "3" ""
"12355" "4" "2" "4" ""
Это запрос, который я написал с помощью Cross Apply
SELECT
[Stat].[DeviceId] AS [DeviceId],
[Stat].[Message].[Streak] AS [Streak],
[Stat].[Message].[Status] AS [Status],
[Stat].[Message].[Error] AS [Error],
[Stat].[UseTime].[Time] AS [Checkin],
[Stat].[Open].[Time] AS [OpenTime]
INTO
Messages
FROM
(
SELECT
[EventAlias].*,
[Checkin].[ArrayValue] AS [UseTime],
[OutputTime].[ArrayValue] AS [Open]
FROM [SmartCapData] AS [EventAlias]
CROSS APPLY GetArrayElements(EventAlias.Message.Checkin) AS [Checkin]
CROSS APPLY GetArrayElements(EventAlias.Message.Timestamp) AS [OutputTime]
) AS Stat
В приведенном выше примере применяется перекрестный переход, я хочу использовать его параллельно,
Заранее спасибо:)