Как спроецировать пару значений ключей json на столбцы без явного указания имени - PullRequest
0 голосов
/ 01 декабря 2018

В customDimensions У меня есть x количество данных пары ключ-значение (в настоящее время только два Name и Channel в качестве примера на скриншоте ниже)

enter image description here

и я хотел бы проецировать их на столбцы без явного указания имени ключа , чтобы в будущем, если новая пара ключ-значение добавлялась в журнал, яне нужно возвращаться и изменять мой запрос, чтобы отобразить его как новый столбец.

enter image description here

Спасибо!

1 Ответ

0 голосов
/ 01 декабря 2018

Язык запросов Kusto включает в себя плагин bag_unpack(): https://docs.microsoft.com/en-us/azure/kusto/query/bag-unpackplugin

Вот пример:

datatable(anotherColumn:int, customDimensions:dynamic)
[
    1, dynamic({"Name":"mfdg",  "Channel":"wer"}),
    2, dynamic({"Name":"mfdg2", "Channel":"wer2"}),
    3, dynamic({"NotAName":2.22, "NotAChannel":7}),
]
| evaluate bag_unpack(customDimensions)

Который дает:

| anotherColumn | Name  | Channel | NotAName | NotAChannel |
|---------------|-------|---------|----------|-------------|
| 1             | mfdg  | wer     |          |             |
| 2             | mfdg2 | wer2    |          |             |
| 3             |       |         | 2.22     | 7           |
...