0

小数点以下の桁数を 4 に変更したいのですが、わかりません。助けてください。

--クエリ

select CASE v2.[ie version]
      When '11' Then 'Internet Explorer 11'
      When '9' Then 'Internet Explorer 9'
      When '8' Then 'Internet Explorer 8'
      Else [IE Version] End [IE Version],
COUNT(distinct v1.guid) 'Total Count', COUNT(*) *100.00 / SUM(COUNT(*)) over()'Total Percentage' from vcomputer v1
inner join vIEVersions v2 on v1.guid = v2.guid where v1.ismanaged = '1'
and v2.[IE Version] is not Null and v2.[IE Version] not in ('Unknown', '7', '10')
group by v2.[IE Version] order by 1 desc

- 出力

IE Version               Total Count    Total Percentage
Internet Explorer 9      180            1.7349397590361
Internet Explorer 8      531            5.1180722891566
Internet Explorer 11     9664           93.1469879518072
4

3 に答える 3

0

10 進数への CAST で十分です。

CAST(COUNT(*) *100.00 / SUM(COUNT(*)) over() as decimal(12,4)) 
于 2016-06-26T16:40:25.843 に答える
0

最初CREATE TABLE VIEWに小数のパーセンテージの内訳を確認し、次にラウンド関数を次のコード例のように合計の値に呼び出す 必要があると思います。

SELECT ROUND(column_name,decimals) FROM table_name;

それが役に立てば幸い。

于 2016-06-26T15:41:55.043 に答える
0

たとえば、これを試してください。

@i int=23 を宣言

キャストを選択 (@i*100.00/3 as decimal(10,4))

于 2016-06-27T05:12:34.213 に答える