我可以在Sybase中的变量中分配完整的SQL语句吗?

时间:2011-09-08 19:24:36

标签: sql variables sybase

我需要这样的东西:

DECLARE @tax float
SELECT field1, field2,
CASE WHEN (@tax = select field3 from table2 where complex-sql-here) IS NULL THEN 1 ELSE the-value-of-tax END
FROM table1
WHERE @tax = 'something'

我需要在@tax中分配整个“select field3 ...”的值。有没有办法做到这一点?

2 个答案:

答案 0 :(得分:0)

好吧,我认为你不能将一个字段分配给一个简单的变量。 你可以使用像

这样的东西
Declare @temptable table (field3)

现在有些服务......

答案 1 :(得分:0)

这样做的一种方法是将你的@tax变量描述为字符并将结果记录下来

声明@tax varchar(30)

选择@ tax = convert(char,field1)+“,”+ convert(char,field2)..

其中..

如果你想存储sql语句,你只需存储就像

声明@sql varchar(1024)

选择@sql =“在此处写询问”

执行

EXEC(@sql)