Return 如果 kusto 中没有结果,则为 null 而不是 nothing

Return null instead of nothing if there are no results in kusto

问题

我有一个 kusto 查询 return 没有结果。我希望查询 return 仅当没有行从以下查询中 return 时,由 null 组成的单行,否则查询 return 数据。

例子

let Source = datatable(name:string, age:long)
[
  'John', 32,
  'Lisa', 24,
  'Lora', 55,
  'Adam', 66,
];
Source 
| where age <= 20
| project name, age

预期结果

|---------------------|------------------|
|         Name        |        Age       |
|---------------------|------------------|
|         Null        |        Null      |
|---------------------|------------------|

您可以 union 使用包含空字符串记录的 datatablenull,如下所示:

let Source = datatable(name:string, age:long)
[
  'John', 32,
  'Lisa', 24,
  'Lora', 55,
  'Adam', 66,
];
let T = Source 
| where age <= 20
| project name, age
;
let T_has_records = toscalar(T | summarize count() > 0);
union 
(T | where T_has_records == true),
(datatable(name:string, age:long)['', long(null)] | where T_has_records == false)