Kusto:如何从不参与 SUMMARIZE 的列中获取值?

Nic*_*ian 2 azure-log-analytics azure-data-explorer

有了下表和 Kusto 查询,如何获得包含“购买”列的结果?

let ProductsTable = datatable(Supplier: string, Fruit: string, Price: int, Purchase: datetime)
[
    'Contoso', 'Grapes', 220, datetime(2018-10-01 01:00),
    'Fabrikam', 'Lemons', 31, datetime(2018-10-01 02:00),
    'Contoso', 'Lemons', 29, datetime(2018-10-02 03:00),
    'Contoso', 'Grapes', 210, datetime(2018-10-02 04:00),
    'Fabrikam', 'Lemons', 30, datetime(2018-10-03 05:00),
    'Contoso', 'Bananas', 12, datetime(2018-10-03 06:00),
    'Contoso', 'Bananas', 12, datetime(2018-10-04 07:00),
    'Contoso', 'Lemons', 29, datetime(2018-10-04 08:00),
    'Contoso', 'Grapes', 200, datetime(2018-10-05 09:00),
];
ProductsTable
    | summarize Price = min(Price) by Supplier, Fruit
    | order by Supplier asc, Fruit asc, Price asc
Run Code Online (Sandbox Code Playgroud)

结果

Contoso Bananas 12
Contoso Grapes      200
Contoso Lemons      29
Fabrikam    Lemons      30
Run Code Online (Sandbox Code Playgroud)

期望的结果

Contoso Bananas 12  2018-10-03 06:00
Contoso Grapes      200 2018-10-05 09:00
Contoso Lemons      29  2018-10-02 03:00
Fabrikam    Lemons      30  2018-10-03 05:00
Run Code Online (Sandbox Code Playgroud)

我知道可能有多个结果,例如对于Contoso-Bananas-12,我们可以有以下任何结果

  • 2018-10-03 0 6 :00
  • 2018-10-04 0 7 :00

Yon*_*i L 5

尝试使用arg_min()https ://learn.microsoft.com/en-us/azure/kusto/query/arg-min-aggfunction

let ProductsTable = datatable(Supplier: string, Fruit: string, Price: int, Purchase: datetime)
[
    'Contoso', 'Grapes', 220, datetime(2018-10-01 01:00),
    'Fabrikam', 'Lemons', 31, datetime(2018-10-01 02:00),
    'Contoso', 'Lemons', 29, datetime(2018-10-02 03:00),
    'Contoso', 'Grapes', 210, datetime(2018-10-02 04:00),
    'Fabrikam', 'Lemons', 30, datetime(2018-10-03 05:00),
    'Contoso', 'Bananas', 12, datetime(2018-10-03 06:00),
    'Contoso', 'Bananas', 12, datetime(2018-10-04 07:00),
    'Contoso', 'Lemons', 29, datetime(2018-10-04 08:00),
    'Contoso', 'Grapes', 200, datetime(2018-10-05 09:00),
];
ProductsTable
| summarize Price = arg_min(Price, *) by Supplier, Fruit
| order by Supplier asc, Fruit asc, Price asc
Run Code Online (Sandbox Code Playgroud)