2

実行時にフィールド内の一意の要素をカウントし、これらの値を要素の総数のパーセンテージとして出力するクエリを Microsoft Access で作成しようとしています。

たとえば、次の 8 つの要素のフィールドを持つテーブル SampleTable があるとします。

文字値

バツ

バツ

バツ

y

バツ

y

次を返す出力を探しています

文字値パーセント

×50%

25%

25%

さらに良いことに、この単純なカウント クエリを変更してこの結果を取得することは可能ですか?

SELECT LetterValue, COUNT(*) AS QTY
FROM SampleTable
GROUP BY LetterValue;
4

2 に答える 2

4

この質問には、値を文字列に変換するなど、いくつかの部分があります (したがって、「%」を追加できます)。

SELECT st.LetterValue, cdbl(100.0*COUNT(*)/tot.tot)&'%' AS QTY
FROM SampleTable st,
     (select COUNT(*) as tot
      from SampleTable
     ) as tot
GROUP BY st.LetterValue, tot.tot;
于 2013-07-01T17:38:50.967 に答える
3

このようなこともできます

SELECT group_counts.letter, group_counts.countNums, (group_counts.countNums/total_count.total_nums*100) AS [Percent]
  FROM (SELECT letter, Count(*) AS countNums FROM [yourTable] GROUP BY letter) AS group_counts, 
       (SELECT Count(*) AS total_nums FROM [yourTable]) AS total_count;

これは次のように出力されます

Letter     CountNums     Percent
 a         2             20
 b         4             40
 c         2             20
 d         1             10
 e         1             10
于 2013-07-01T17:51:00.520 に答える