有没有办法在Firebird中使用变量引用字段名称

时间:2011-10-10 14:01:46

标签: sql firebird

有没有办法在Firebird中引用带变量值的字段名称? 例如,我想像这样制作SQL:

Insert into tab1 (1, f1, f2, f3)
    select 1, tab2.f+var_loop, tab2.f+var_loop, tab2.f+var_loop
    from tab2
    where .....

其中“f”是字段名称的第一个首字母,“var_loop”是循环变量 感谢

2 个答案:

答案 0 :(得分:0)

为此,您必须编写应用程序代码以在准备查询之前构建SQL。

在SQL中,必须在准备查询时修复列的名称和列数。列名不能基于直到运行时才计算的表达式。据我所知,在标准SQL和RDBMS的每个品牌中都是如此。

此外,您不能在SELECT子句中的列列表周围使用括号。

答案 1 :(得分:0)

不,这不受支持。我想你可以用EXECUTE BLOCK来实现这样的东西,但是你也可以在客户端建立正确的SQL语句,这样会更容易......