迭代kdb查询中的当前行值

迭代kdb查询中的当前行值,kdb,Kdb,考虑下表: q)trade stock price amt time ----------------------------- ibm 121.3 1000 09:03:06.000 bac 5.76 500 09:03:23.000 usb 8.19 800 09:04:01.000 名单如下: q)x: 10000 20000 以下查询: q)select from trade where price < x[first where (x - price)

考虑下表:

q)trade
stock price amt  time
-----------------------------
ibm   121.3 1000 09:03:06.000
bac   5.76  500  09:03:23.000
usb   8.19  800  09:04:01.000
名单如下:

q)x: 10000 20000
以下查询:

q)select from trade where price < x[first where (x - price) > 100f]
'length
q)从价格100f]
“长度
失败如上所述。如何在搜索查询的每次迭代中传递
price
的当前行值


虽然上面方括号中的
price[0]
有效,但这显然不是我想要的。我甚至尝试了
price[I]
,但这会产生相同的错误。

您得到的是“长度错误,因为'x'和'price'长度不同。”当x'进入你的函数时,它的长度是2,价格是3。为了解决这个问题,请您提供更多的细节,您希望通过示例输出结果实现什么。我希望price在传递到上面的
x
的索引函数时是一个标量。它的值应该是select迭代的每一行的值
x
price
的长度不同。这有意义吗?所以有一点很清楚,在每次迭代中,您都希望函数中有一个价格值。“x”是相同的还是每个价格值都与完整的“x”进行比较?我认为
x
是一个“向量”:因此如果
x:1020
并说我们在我的查询中处于索引
I:20
price[20]:10
,我想要
x-price[20]:010
。这与我之前提到的查询相同。