gpt4 book ai didi

KDB - 运行一个函数,其中函数名称和参数作为字符串传入

转载 作者:行者123 更新时间:2023-12-04 14:23:42 24 4
gpt4 key购买 nike

我正在组合一个查询 KDB session 并将各种数据位返回到前端的进程。前端将一个参数传递给 KDB session ,该参数是一个以字符串形式出现的表名——例如"table",其中table是KDB session 中的一个表

我可以在引用的基础表上运行一些简单的 KDB 函数,例如:

count `$"table"
cols `$"table"

在其他情况下,前端将一个字符串传递给 KDB session ,该 session 指定一个函数和一个参数,该函数和参数在运行时返回一个等同于上述 table 的表——例如“函数参数”我想在运行 function parameter

返回的表上运行相同的简单函数

以下不返回相当于 count tablecols table 的输出:

count `$"function parameter"
cols `$"function parameter"

从字符串 "function parameter" 隐含的表中获取计数和列的最佳方法是什么

非常感谢!

最佳答案

在您的示例中,cols 能够将表格或表格名称作为符号作为参数,这就是它按预期返回列名称的原因。 count 不能将表的名称作为参数,因此将返回 1,因为只有一个符号元素。

"function parameter" 已转换为符号 `function parameter 并且没有具有此名称的表,因此将其作为参数传递给 cols 将抛出错误,而将其传递给 count 将返回 1,原因与之前相同。

您可能对使用带有字符串参数的value 函数感兴趣,这里有关于它的文档:http://code.kx.com/q/ref/metadata/#value .

它将评估字符串参数,就好像它是在命令提示符中输入的一样。使用 value "table" 将返回 table 变量,value "function parameter" 将使用参数运行函数,该参数也是一个表。

然后可以使用 count value "function parameter"count value "table" 将这些传递到您的简单函数中以返回所需的输出。

希望有用,

标记

关于KDB - 运行一个函数,其中函数名称和参数作为字符串传入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49938179/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com