Ganesh Jadhav
Ganesh Jadhav

Reputation: 616

KDB get last/first day of quarter

How can I get last or first day of quarter for given date.

I was trying something like

C:"d"$3 xbar "m"$

C .z.d

Upvotes: 0

Views: 1282

Answers (1)

Hannah Robinson
Hannah Robinson

Reputation: 131

Your function seems to work for the first day of the quarter

qfirst:"d"$3 xbar "m"$ 
qfirst .z.d
2019.01.01

In order to get the last day of the quarter you need to amend it slightly

qlast: -1+"d"$3+3 xbar "m"$
qlast .z.d
2019.03.31

In order to make the function faster, you can write the function as a lambda, rather than as a projection.

lambdaqfirst:{"d"$3 xbar "m"$x}
\ts:1000000 lambdaqfirst .z.d
1583 560
\ts:1000000 qfirst .z.d
1897 528

Upvotes: 3

Related Questions