2013-11-01 92 views
1

我正在使用SQL Server 2008.我有一个计算字段 - PercentChange,它定义为Round(100 *(a-b)/ b,2)。我查询的结构为格式化SQL中的计算字段

Select x.* from 
(
*query goes here, PercentChange defined here* 
) as x 
where x.Percentchange >50 

问题是PercentChange场被格式化为一个对象(!),我不能够在“%”符号添加到它。正如你可能猜到的,我不是这方面的专家。那么任何人都可以请建议一个解决方法来显示“PercentChange”60.55为60.55%?

+1

更好地在表示层(即在您的前端应用程序中)做到这一点。因为,一旦添加了'%'标记,它就变成了一个字符串,您将无法再使用字符串操作将该字段用于任何计算目的。 – Kaf

回答

2

如果SQL服务器使用该

Select cast(x.Percentchange as varchar) + '%', x.oteherfield, ... 
from(
    *query goes here, PercentChange defined here* 
    ) as x 
where x.Percentchange >50 

或像这样对其他方言。

+0

显然,它不是为SQL服务器,但表示层的工作,无论如何这是你的问题的确切答案。 –