对终端中的空值感到困惑

问题描述 投票:0回答:1

所以我正在练习 kdb,并提出一些自我挑战。这个程序应该告诉你今天是否是某人的生日。 (在此版本中我只是使用字母而不是名称)。

我的问题是:终端输出的这三个空值是什么?



.aaa.bdic: `a`b`c!((01 12);(02 01);(29 04))

.aaa.bdic
a| 1  12
b| 2  1 
c| 29 4 

  {if[((`dd $ .z.P)=.aaa.bdic[x][0]) and (`mm $ .z.P)=.aaa.bdic[x][1]; show "it's " , (string x) , "'s birthday!"]}each key .aaa.bdic

"it's c's birthday!"
::
::
::

我尝试向字典中添加另一个项目,但得到了四个空值而不是三个。

一个更简单的函数会返回类似的奇怪输出:


show each .aaa.bdic
1 12
2 1
29 4
a| ::
b| ::
c| ::
kdb
1个回答
1
投票

那些空值

::
仅表明您的函数没有输出。您看到 3 是因为有 3 个 kley,并且您运行该函数 3 次。

© www.soinside.com 2019 - 2024. All rights reserved.