SQL中的计数结果
在SQL中使用COUNT时遇到问题…下面的查询返回两行,但随后返回raps列作为137。因此,我认为它是计算数据集中操作id列的总数,而不是计算结果 有没有办法让它只计算结果中的列,这样raps在每个列中返回1?然后我将使用PHP将它们添加到一起 //质疑SQL中的计数结果,sql,oracle10g,Sql,Oracle10g,在SQL中使用COUNT时遇到问题…下面的查询返回两行,但随后返回raps列作为137。因此,我认为它是计算数据集中操作id列的总数,而不是计算结果 有没有办法让它只计算结果中的列,这样raps在每个列中返回1?然后我将使用PHP将它们添加到一起 //质疑 SELECT DISTINCT hrap_id, operation_id, COUNT (operation_id) AS raps,
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
您需要像这样将DISTINCT放在count函数中
COUNT(DISTINCT operation_id) AS raps
您是否尝试过从view_rappels中选择COUNT(DISTINCT operation_id)作为RAP?如果您知道它将始终为1-这将是什么,因为
operation_id
是group by的一部分(除非您有任何空值,在这种情况下,您将得到零)-为什么要费心计算?谢谢,我不知道这是可能的。