我试图在泡泡中显示结果的百分比。
我已经使用下面的存储过程为数据列表中绑定的div设置css样式(宽度,高度,字体大小以显示为气泡)。
Select
*,
'width: '+cast(@maxWidth*(CountItemPercentage/100) as varchar(max)) +'px; height: '+cast(@maxWidth*(CountItemPercentage/100) as varchar(max)) +'px; font-size: '+cast(@maxWidth*((CountItemPercentage/100)/5) as varchar(max)) +'px;' as CSSStyle
from
@temp
我已将最大宽度设置为300px。
现在我的问题是,如果百分比低于10%,泡沫太小而无法看到。如何使用存储过程为div设置最小宽度以使其清晰可见?
提前致谢
答案 0 :(得分:0)
我不知道为什么你会这样做,但我相信每个客户/项目都有自己的需求。除此之外,你可以使用这样的CASE语句:
--Set the minimum width percentage DECLARE @MinWidthPercentage as int; set @MinWidthPercentage = 10;
SELECT (CASE
WHEN CountItemPercentage < @MinWidthPercentage THEN 'width: ' + cast(@maxWidth*(MinWidthPercentage /100) as varchar(max)) + 'px; height: ' + cast(@maxWidth*(MinWidthPercentage /100) as varchar(max))
+ 'px; font-size: ' + cast(@maxWidth*((MinWidthPercentage /100)/5) as varchar(max)) +'px;'
ELSE 'width: '+cast(@maxWidth*(CountItemPercentage/100) as varchar(max)) +'px; height: '+cast(@maxWidth*(CountItemPercentage/100) as varchar(max)) +'px; font-size: '+cast(@maxWidth*((CountItemPercentage/100)/5) as varchar(max))
+'px;') AS CSSStyle from @temp
或者您可以在开头使用if来设置@percentage变量并使用该变量而不是CountItemPercentage。