kdb / q - как выбрать по расписанию? - PullRequest
1 голос
/ 31 марта 2019

Я знаю, что могу select by sym, time.second from table выбирать по секундам или использовать xbar для некоторых других фиксированных интервалов времени

Но это более или менее равномерные временные интервалы. Как я предоставил полностью настроенный список раз в select by?

1 Ответ

2 голосов
/ 31 марта 2019

вы могли бы использовать binr для выполнения этого

q)tab:([]t:.z.d+10000?.z.n)
q)/ create custom bins ensuring in ascending time order for binr to work correctly 
q)tl:.z.d+09:30 10:45 15:32
q)/ x binr y - will return the index of first item in x which is ≥y 
q)/ we then index back into our tl with result 
q)select count i by tl tl binr t from tab 
t                            | x   
-----------------------------| --
2019.03.31D09:30:00.000000000| 6443
2019.03.31D10:45:00.000000000| 807 
2019.03.31D15:32:00.000000000| 2750
...