您如何在Denodo中声明变量?

时间:2019-05-07 21:02:41

标签: denodo

我无法在查询中声明要与Denodo一起使用的变量。

我尝试使用sql语法编写它,但是出现“ declare”错误。

declare @var1 varchar(6) = 'table1'

select column_name, column_description
from view('pb', '@var1')
order by column_name

我希望它与变量“ var1”一起运行,但是出现一条错误消息1100,并显示一条消息:“语法错误:声明附近的异常解析查询”。

1 个答案:

答案 0 :(得分:2)

您可以在Denodo中将变量与SETVAR('','','','')一起使用。但这仅适用于where子句中的列名称或条件。我已经对其进行了测试,它不适用于视图名称。

示例:

select SETVAR('columnname','foo');
select GETVAR('columnname', 'text', 'asdf') from foobar 

这将返回foobar表的foo列

这不起作用:

select SETVAR('tablename','foobar');
select * from GETVAR('tablename', 'text', 'asdf')

我不认为在denodo中可以使用变量作为表名。编写查询时,您可能需要在脚本中执行此操作。