如何自定义函数使之可以在 sql where 语句中使用

请教一下如何在 sql 的 where 语句里使用自定义函数, 我使用下述自定义函数会报错提示需要的是标量而不是向量。

attachments-2023-05-0TDwHb5g64619bc872390.png
attachments-2023-05-wYkxtGA164619d280322a.png

请先 登录 后评论

1 个回答

veryOrdinary

dolphindb 是向量运算,where 中自定义函数输入参数为列字段,需要返回一个等长的向量,有以下几种方式可以解决:

(1) 将上述函数改写为向量函数。

(2) each(isZero, openDiff) 。

(3) 利用 iif 实现 where 逻辑:where iif((openDiff<1.0/pow(10,4) && openDiff>-1.0/pow(10,4)),true,false) == true。

(4) 根据您的逻辑该场景可以用 eqFloat(precision=4)替代自定义函数。

请先 登录 后评论
  • 1 关注
  • 0 收藏,614 浏览
  • Polly 提出于 2023-05-15 10:47

相似问题