如何在KDB中使用.year-inside函数?

如何在KDB中使用.year-inside函数?,kdb,q-lang,Kdb,Q Lang,我想用点符号来提取日期的年份 q) myDate:2014.01.01; q) myDate.year 2014i / works OK 但在函数中 f:{[x] :x.year}; f[myDate] 我收到一个错误(我将Studio用于KDB+) 出什么问题了?根据,这种行为是q的一种怪癖。要解决这个问题,可以使用cast函数 q)f:{[x] :`year$x} q)f[myDate] 2014i q)f:{[x] :`year$x} q)f[myDate] 20

我想用点符号来提取日期的年份

q) myDate:2014.01.01;
q) myDate.year
2014i           / works OK
但在函数中

f:{[x] :x.year};
f[myDate]
我收到一个错误(我将Studio用于KDB+)

出什么问题了?

根据,这种行为是q的一种怪癖。要解决这个问题,可以使用cast函数

q)f:{[x] :`year$x}
q)f[myDate]
2014i
q)f:{[x] :`year$x}
q)f[myDate]
2014i