如何在 Denodo 中声明变量?
How do you declare a variable in Denodo?
我无法在我的查询中声明一个用于 Denodo 的变量。
我试过使用 sql 语法编写它,但是 "declare".
出现错误
declare @var1 varchar(6) = 'table1'
select column_name, column_description
from view('pb', '@var1')
order by column_name
我希望这个 运行 与变量 "var1" 但我收到错误代码 1100 和一条消息:"Syntax Error: Exception parsing query near declare".
您可以在 Denodo 中通过 SETVAR('', '', '', '') 使用变量。但这仅适用于列名或 where 子句中的条件。我已经对其进行了测试,但它不适用于视图名称。
示例:
select SETVAR('columnname','foo');
select GETVAR('columnname', 'text', 'asdf') from foobar
这个 returns foobar 的 foo 列 table
这不起作用:
select SETVAR('tablename','foobar');
select * from GETVAR('tablename', 'text', 'asdf')
我认为在 denodo 中使用变量作为 table 名称是不可能的。您可能需要在编写查询时在脚本中执行此操作。
我无法在我的查询中声明一个用于 Denodo 的变量。
我试过使用 sql 语法编写它,但是 "declare".
出现错误declare @var1 varchar(6) = 'table1'
select column_name, column_description
from view('pb', '@var1')
order by column_name
我希望这个 运行 与变量 "var1" 但我收到错误代码 1100 和一条消息:"Syntax Error: Exception parsing query near declare".
您可以在 Denodo 中通过 SETVAR('', '', '', '') 使用变量。但这仅适用于列名或 where 子句中的条件。我已经对其进行了测试,但它不适用于视图名称。
示例:
select SETVAR('columnname','foo');
select GETVAR('columnname', 'text', 'asdf') from foobar
这个 returns foobar 的 foo 列 table
这不起作用:
select SETVAR('tablename','foobar');
select * from GETVAR('tablename', 'text', 'asdf')
我认为在 denodo 中使用变量作为 table 名称是不可能的。您可能需要在编写查询时在脚本中执行此操作。