我有一个trade
表:
trade:([]time:`time$();sym:`symbol$();price:`float$();size:`int$())
`trade insert(5?09:30:00.000;5?`a`b;5?10.75;5?100)
和聚合(aggr
)函数:
aggr:{[f;c;tab] ?[tab;();`sym;c!(f),'c] }
适用于以下情况:
aggr[(last;min;max);(`time`size`price);`trade]
但是我想要所有的价格,而不仅仅是max
,如下所示:
?[trade;();`sym;(`time`size`price!((last;`time);( min;`size);(`price)))]
实现这一目标的最佳方法是什么?
答案 0 :(得分:1)
您可以使用::
(identity function):
aggr[(last;min;::);(`time`size`price);`trade]
与:
相同aggr[(last;min;{x});(`time`size`price);`trade]
重载 ::
以用作monadic标识函数:
q)(::)1
1
q){x}1
1