【问题标题】:How do you declare a variable in Denodo?如何在 Denodo 中声明一个变量?
【发布时间】:2019-07-05 13:58:48
【问题描述】:

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

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

declare @var1 varchar(6) = 'table1'

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

我希望它使用变量“var1”运行,但我收到错误代码 1100 并显示一条消息:“语法错误:声明附近的异常解析查询”。

【问题讨论】:

    标签: denodo


    【解决方案1】:

    您可以通过 SETVAR('', '', '', '') 在 Denodo 中使用变量。但这仅适用于 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 中使用变量作为表名是不可能的。您可能需要在编写查询时在脚本中执行此操作。

    【讨论】:

    • 可以避免给出默认值asdf?
    猜你喜欢
    • 1970-01-01
    • 2014-04-03
    • 2012-07-30
    • 1970-01-01
    • 2023-03-28
    • 2019-05-09
    • 2015-08-29
    • 2012-03-30
    • 1970-01-01
    相关资源
    最近更新 更多