如何从 KDB 中的表中检索日期作为值

  • 本文关键字:日期 检索 KDB kdb
  • 更新时间 :
  • 英文 :


>我从表中检索日期: my_date:从表中选择最大日期

现在我想这样使用my_date: 从some_other_table中选择日期在(my_date;现在)但是my_date有类型表 - 我如何将日期提取为要在上次查询中使用的值?

exec提取列作为向量。对于您的示例,您可以将max聚合器取出,使其成为一个可以与within一起工作的原子,如下所示:

select from some_other_table where date within(max exec date from table;now)

同样,如果在内存中,您可以使用像字典一样的表

max table`date

你应该使用'exec'。"exec"以各种形式返回数据,如单值,列表,字典等,具体取决于其使用方式。

     q) my_date:exec max date from table

这将返回最大日期作为值。

但下面的电话:

     q) exec date from table

这将重新显示一个列表,该列表将包含表中的所有日期值。

两个 Scnario:1. 如果您正在查询一个简单的表,直接索引应该是最快的

从 TB2 中选择日期在内(最大 TB1'日期;。z.D)

  1. 如果要查询张开/分区表,则无法使用索引,因此需要执行间接执行:

select from tb2 where date within (max exec from select date from tb1;.z.D)

最新更新