0h类型的KDB表是什么意思?

时间:2017-06-09 14:54:30

标签: kdb

这就是我所观察到的:

q)type select date,time from table
98h
q)type select date,time,size from table
0h
q)select date,time,size from table
date       time                          size  
------------------------------------------------
2007.01.03 2007.01.03D09:31:00.000000000 200    
2007.01.03 2007.01.03D09:31:00.000000000 313869 
2007.01.03 2007.01.03D09:31:00.000000000 114852 
2007.01.03 2007.01.03D09:31:00.000000000 566600 
..

为什么结果表的类型为0h?它是什么意思?为什么在查询中添加大小会更改结果类型?谢谢。

1 个答案:

答案 0 :(得分:1)

这意味着一个混合列表 - http://code.kx.com/q/ref/datatypes/

因此 - 尺寸是混合型。您可以将列分组为其类型,并通过运行以下来识别有问题的索引:

exec i group type each size from table

要将列添加到类型列中,您需要运行强制转换以将其转换为所需类型。例如,您的时间列可能包含整数和长整数,只需将它们投射到您需要的位置即可。