使用单个值创建字典时输入错误

时间:2019-05-11 06:18:44

标签: kdb

当我使用单个int / long值创建字典时,将创建字典

`ke!1 / Output- `ke!1i

但是当我用单个符号,字符或字符串创建值的字典时,会抛出类型错误。

`ke!`a    / 'type
`ke!"a"   / 'type
`ke!"abc" / 'type
`ke!enlist(`a) / `type
`ke!(enlist "a") / 'type

尝试了更多其他组合,但没有帮助。
“真人快打”和“参考卡”也没有提供任何理解。
请让我知道类型错误的原因以及如何解决?

1 个答案:

答案 0 :(得分:4)

!在q中相当超载。在这种情况下,当左侧参数是符号原子时,您实际上是在创建枚举。

q)type `ke!1i
-21h

您可以通过同时征募双方来创建所需的字典。

q)type(enlist `ke)!enlist 1i
99h

page提供了有关!的不同用法的很好的总结。