TSQL:函数的返回值是列的名称

乌申娜·埃比拉(Uchenna Ebilah)

我有一个函数,它使用几种情况来查找当前周期,返回一个varchar(50),这是我需要的周期列。

我想对本专栏做一个总结,我不确定该怎么做。

例:

Select SUM(ABS([dbo].[ACTUAL_PERIOD] ())) FROM Finance_DB

任何帮助都会很棒。

另外,您认为我应该首先使用该功能吗?基本上,它所做的就是通过12个case语句来工作,这些语句通过查找另一个表来确定我们处于哪个时期。起初,我打算使用存储过程,但是...它不会返回任何内容。我之所以要使用它,是因为该特殊case语句在整个查询和所有其他查询中重复出现。时间长了,我认为程序/功能看起来更整洁。但是,通过在线阅读后,我了解到某些情况实际上没有从功能上受益而不是内联编写查询,无论它多么冗长。有什么想法吗?

瓦莱克斯

在这种情况下,您应该使用动态SQL。例如:

declare @SQL nvarchar(100);
select @SQL='Select SUM(ABS('+[dbo].[ACTUAL_PERIOD]()+')) FROM Finance_DB';
execute sp_executesql @SQL;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章