在SQL中计算结果

时间:2014-05-30 15:04:45

标签: sql oracle10g

我在SQL中使用COUNT时遇到问题...以下查询返回两行,但随后将raps列返回为137.所以我相信它会计算中的operation_id列的总数。数据集而不是结果。

有没有办法让它只计算结果中的列,以便每个列中的raps返回1?然后我会用PHP将它们加在一起。

//查询

  SELECT DISTINCT hrap_id,
                    operation_id,
                    COUNT (operation_id) AS raps,
                    operation_type
      FROM view_rappels
      WHERE year = '2013' AND crew_id = '4'
  GROUP BY hrap_id, operation_type, operation_id

//结果

10.00   702020000.00    137.00  operational
1.00    702020000.00    137.00  operational

1 个答案:

答案 0 :(得分:1)

你需要将DISTINCT放在count函数中,如此

COUNT(DISTINCT operation_id) AS raps