繁体   English   中英

雪花如何从执行方法返回查询

[英]Snowflake how to return query from execute method

我有一个雪花程序,为简洁起见,让我们说它只是使用snowflake.execute运行查询

var rs = snowflake.execute( { sqlText:
`
  CREATE OR REPLACE VIEW DATABASE.SCHEMA.VIEW_NAME_HERE AS
  SELECT
    column1
    ,${stuff}     as column2
    ,${morestuff} as column3

  FROM DATABASE.SCHEMA.TABLE_SOURCE_HERE
`

                            } );
  return rs

我如何返回rs以显示它正在运行的查询? 我只是得到一个[object object]结果。

Statement 对象有一个名为 getSqlText() 的方法:

https://docs.snowflake.com/en/sql-reference/stored-procedures-api.html#getSqlText

CREATE OR REPLACE PROCEDURE my_proc() 
RETURNS STRING 
LANGUAGE JAVASCRIPT 
EXECUTE AS OWNER
AS 
$$ 
    snowflake.execute( {sqlText: "create or replace table test (col string)"} ); 
    var column = 'col';
    var stmt = snowflake.createStatement( {sqlText: `SELECT MAX(${column}) FROM test`} ); 
    var ret = stmt.execute();
    
    return stmt.getSqlText();
$$ ; 

call my_proc();

它返回:

SELECT MAX(col) FROM test

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM