Как заменить пустой (ненулевой) столбец типа данных строки нулевым значением?
Так скажем, следующий запрос возвращает ненулевой набор записей: -
mytable | where mycol == ""
Теперь этостроки с mycol, содержащие пустые строки.Я хочу заменить их на нули.Теперь из того, что я прочитал в документации по kusto, у нас есть нулевые литералы, относящиеся к типу данных, такие как int (null), datetime (null), guid (null) и т. Д. Но нет строки (null).Наиболее близким к строке является guid, но когда я использую его следующим образом, я получаю ошибку: -
mytable | where mycol == "" | extend test = translate(mycol,guid(null))
Ошибка: -
translate(): argument #0 must be string literal
Так, как это сделать?затем?
Обновление: -
datatable(n:int,s:string)
[
10,"hello",
10,"",
11,"world",
11,"",
12,""
]
| summarize myset=make_set(s) by n
Если вы выполните это, вы увидите, что пустые строки рассматриваются как часть наборов.Я не хочу этого, никакие такие пустые строки не должны быть частью моего массива.Но в то же время я не хочу терять значение n, и это именно то, что произойдет, если я использую функцию isnotempty.Таким образом, в следующем примере вы можете видеть, что строка, в которой n = 12 не возвращается, нет необходимости пропускать n = 12, всегда можно получить пустой массив: -
datatable(n:int,s:string)
[
10,"hello",
10,"",
11,"world",
11,"",
12,""
]
| where isnotempty(s)
| summarize myset=make_set(s) by n