函数结果中的列标题

时间:2011-06-09 21:09:46

标签: sql function alias

我有一个以特定格式返回日期的函数

FormatDate(int PreviousMonths,int Format)返回varchar(100) - 例如。 FormatDate(0,2)返回'2011年6月'

但我无法正确对列进行别名。

给出语法错误的一个简单示例是:

Select Foo as dbo.FormatDate(0,2) From FooTable

如何使用函数的结果对列进行别名?

对不起,我的问题似乎有点不清楚 - 这里有一些额外的信息:

名为FooTable的表,由一列名为Foo的列组成,其中3行数据包含1,2,3。

Select Foo as dbo.FormatDate(0,2) From FooTable

返回:
2011年6月
1
2
3

谢谢, 达斯汀

2 个答案:

答案 0 :(得分:3)

差不多......

<击>    从FooTable中选择Foo = dbo.FormatDate(0,2)

或者

Select dbo.FormatDate(0,2) AS Foo From FooTable

编辑:

您不能拥有动态列别名,尤其不是每行

您可以将这样的值发送出去:

Select
   Foo AS SomeValue,
   dbo.FormatDate(0,2) AS SomeName
From FooTable

答案 1 :(得分:0)

Select dbo.FormatDate(0,2) as t from FooTable