使用特定值计算Distinct Paycheck

时间:2015-11-11 07:38:21

标签: sql select count

我有这张表MyTable

 Amount       Desc  Month Sym code  ID
 ------------------------------------------
 $32,323.00   Bla1    1   121 3   2424221
  $4,242.00   Bla1    1   121 3   2424221
 $32,323.00   Bla2    2   124 3   2424221
  $4,242.00   Bla2    2   124 3   2424221
 $32,323.00   Bla2    3   124 3   2424221
  $4,242.00   Bla3    1   126 3   2424221
  $3,535.00   Bla3    2   126 1   3230824
  $4,984.00   Bla4    1   433 1   3230824
 $47,984.00   Bla4    2   433 1   3230824
     $41.00   Bla4    2   433 1   3230824
  $3,472.00   Bla5    1   D2  27  2297429
  $3,472.00   Bla5    1   D2  27  2297429
  $3,239.00   Bla5    2   D2  27  2297429
  $3,472.00   Bla6    1   A2  27  2297429
  $3,239.00   Bla6    1   A2  27  2297429
  $3,239.00   Bla6    6   A2  27  3332321
  $3,239.00   Bla6    6   A2  27  3332321
  $4,249.00   Bla8    1   114 24  3434334
  $4,249.00   Bla8    2   114 24  3434334
  $4,249.00   Bla8    7   114 24  3434334
  $4,249.00   Bla8    7   114 24  3434334

我如何计算一个sym出现在员工身上的数量? (至少一次......意思 - 如果它在jan中7次 - 一次,在feb中8次 - 一次等)

1 个答案:

答案 0 :(得分:0)

您可以先GROUP BY月和Sym,然后计算行数:

SELECT COUNT(*) AS NumberMonths121, SUM(Amount) SumAmount121 FROM (
  SELECT Month, Sym, COUNT(*) AS Amount
  FROM MyTable
  WHERE Sym=121
  GROUP BY Month,Sym
) AS subquery;