这就是我所观察到的:
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?它的意思是什么?为什么向查询添加大小会改变结果类型?谢谢。
发布于 2017-06-09 15:08:31
它意味着混合列表-- https://code.kx.com/q/basics/datatypes/
因此- size是一种混合类型。您可以通过运行以下命令将列分组为不同的类型,并识别有问题的索引:
exec i group type each size from table
要将列转换为类型化的列,您需要运行强制转换将其转换为所需的类型。例如,也许您的time列中混合了int和long,只需将它们转换为您需要的值即可。
https://stackoverflow.com/questions/44460881
复制