2016-10-26 124 views
0

データベースからレポートを取得したいのですが、現在はスコアを表示する列があります。スコアを%numberに変換するにはどうすればよいですか?パーセントとしてのSQL結果を表示する方法

理論的には簡単ですが、私はSQLのエクスポートではないので、それは簡単です。

は私が

select [userid], [QuestionsTotal]/100 * [QuestionsCorrect] as 'score' 
    FROM myTable 

を試してみましたが、私はまた、誰もが私に私は私の問題を解決できる方法についていくつかのヒントを与えることができる
select [userid], [QuestionsTotal]/[QuestionsCorrect] * 100.0 as 'score' 
FROM myTable 

を試してみましたか?

+0

(questionsCorrect/questionsTotal)* 100? – rocks

+1

これはあなたの部門を間違っているSQLの問題ではありません、それはQuestionsCorrect/QuestionsTotal * 100 –

+1

でなければなりません。 –

答えて

2

あなたの正解と合計がINTであると仮定しています。 * 100.0に注意してください.0 .0はあなたの要因の少なくとも1つをINT以外に変換することが重要です。ここで

select [userid] 
    , ([QuestionsCorrect]*100.0)/[QuestionsTotal] as 'score' 
    FROM myTable 
0

は(AVG、COUNT、SUMのために使用することができます。)私が使用し、この結果を達成するための別の方法である:

Select Category as 'Category', COUNT(Category) as 'Count' , 

    CAST(COUNT(Category) as DECIMAL(10,4))/SUM(COUNT(Category)) OVER() * 100 '% Allocation' 

    from Category 
関連する問題