首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在雪花中加入UDF

在雪花中加入UDF
EN

Stack Overflow用户
提问于 2019-04-19 14:53:18
回答 1查看 277关注 0票数 0

在创建一些UDF之后,以下查询工作:

代码语言:javascript
复制
    SELECT
        rsp.id
    FROM TABLE(UDF_1('2019-04-18 12:00:00'::timestamp_ltz)) AS rsp

但是,这个查询:

代码语言:javascript
复制
    SELECT
        rsp.id
    FROM TABLE(UDF_1('2019-04-18 12:00:00'::timestamp_ltz)) AS rsp
    JOIN TABLE(UDF_2('2019-04-18 12:00:00'::timestamp_ltz)) AS rasp ON 
        rsp.id = rasp.id AND
        rsp.timestamp = rasp.start;

给我:

SQL compilation error: error line 5 at position 8 invalid identifier 'RSP.ID'

如果第一个查询不起作用,我会理解的。但是,既然第一个查询是有效的,为什么会告诉我RSP.ID无效?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-19 17:48:45

我想出了一个解决办法:

代码语言:javascript
复制
    SELECT
        rsp.id
    FROM (SELECT * FROM TABLE(UDF_1('2019-04-18 12:00:00'::timestamp_ltz))) AS rsp
    JOIN (SELECT * FROM TABLE(UDF_2('2019-04-18 12:00:00'::timestamp_ltz))) AS rasp ON 
        rsp.id = rasp.id AND
        rsp.timestamp = rasp.start;

很管用。我们推测,JOINs是在函数执行之前发生的,因此JOIN没有什么可用的。

我确信,只要选择与*相反的行,这会更有效,但上述方法对我来说是有效的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55763739

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档