首页 > 解决方案 > 运行函数时如何跳过 kdb 中的错误?

问题描述

func:raze {select compTypeOrigin from .get.order[2021.10.01;string x]}

list:(``abc`def`ggh``eef)

当我运行此功能时,它可以工作

raze {select compTypeOrigin from .get.order[2021.10.01;string x]} `abc

但是当它为空(`)时出现类型错误,可能是由于函数.get.order

我尝试使用受保护的评估运行该功能

@[func;each list[0 + til 6];show]

但它不起作用如何跳过错误?

标签: kdb

解决方案


我认为您需要将 each ( ') 置于受保护的评估之外。试试这个语法:

q)f:{x*x}
q)list:(1;`a;3)
q)@'[f;list;{x}]
1
"type"
9

推荐阅读