查询teradata中的用户定义变量

时间:2014-08-27 20:46:02

标签: sql syntax teradata

我想在不同的时间运行类似的查询,只更改where子句中的一个内容和它所从的表名。

declare ?tablename varchar(100);
set ?tablename = 'some_table_this_time';

declare ?id int;
set ?id = 12

select * from ?tablename
where my_id = ?id

此语法在teradata中不起作用。我在其他sql程序中使用了@variable语法,但在teradata中找不到正确的方法。

研究:

http://forums.teradata.com/forum/database/using-parameters-with-queries

How to use variables in Teradata SQL Macros

1 个答案:

答案 0 :(得分:3)

在Teradata中,没有直接等同于该语法。查看Dieter撰写的这篇博文,了解如何做类似的事情:

http://developer.teradata.com/blog/dnoeth/2011/03/global-and-session-level-parameters-in-sql