我试图定义一个简单的标准 SQL 函数,其中输入乘以函数内部定义的常量。
CREATE or REPLACE FUNCTION Test(b FLOAT64)
RETURNS FLOAT64
AS
DECLARE var FLOAT64 = 0.5;
RETURN (b * var)
;
Run Code Online (Sandbox Code Playgroud)
语法错误是
Syntax error: Expected "(" or string literal but got keyword DECLARE
Run Code Online (Sandbox Code Playgroud)
如何在函数内部定义变量?
使用 SQL UDF 的 BigQuery 标准 SQL 的另一个选项
#standardsql
create or replace function test(b float64)
returns float64 as ((
with variables as (
select 0.5 as var1, 1.5 as var2
)
select b * var1 + var2
from variables
));
Run Code Online (Sandbox Code Playgroud)
正如您所看到的 - 您可以variables在一行中使用所有需要的变量来定义 CTE
| 归档时间: |
|
| 查看次数: |
5417 次 |
| 最近记录: |