запрос Кусто с динамическим значением объекта без ключа - PullRequest
1 голос
/ 13 марта 2019

У меня много данных, похожих на

{"tuesday":"<30, 60>"}  
{"friday":"<0, 5>"} 
{"saturday":"<5, 10>"}  
{"friday":"<0, 5>"} 
{"saturday":"<5, 10>"}  
{"sunday":"0"}  
{"monday":"<0, 5>"}

Все, что я хочу, это значение независимо от ключа.

Мой запрос:

customEvents
| where name == "eventName"
| extend d = parse_json(tostring(customDimensions.['Properties']))
| project d
| take 7

d - это динамический объект, и я могу сделать d.monday для значения, но я бы хотел получить значение без ключа. Это возможно с Кусто?

Спасибо

1 Ответ

1 голос
/ 13 марта 2019

для случая с одним свойством, как вы продемонстрировали выше, использование оператора parse может работать:

datatable(d:dynamic)
[
    ,dynamic({"tuesday":"<30, 60>"})
    ,dynamic({"friday":"<0, 5>"})
    ,dynamic({"saturday":"<5, 10>"})
    ,dynamic({"friday":"<0, 5>"})
    ,dynamic({"saturday":"<5, 10>"})
    ,dynamic({"sunday":"0"})
    ,dynamic({"monday":"<0, 5>"})
]
| parse d with * ':"'  value '"' *
| project value

Примечания:

  • В случае, если ваши значения не обязательно заключены в двойные кавычки (например, являются числами), тогда вы сможете указать kind=regex для оператора parse и использовать условное выражение для существования двойные кавычки.

  • В случае, если у вас есть потенциально более 1 свойства в сумке, используйте extract_all().

Соответствующие документы:

...