我试图运行此查询或东西,将产生从Rails的输出相似:多COUNT(DISTINCT)作为GROUP BY在Rails的
SELECT
COUNT(DISTINCT columnName = 'Value1') AS Value1,
COUNT(DISTINCT columnName = 'Value2') AS Value2,
COUNT(DISTINCT columnName = 'Value3') AS Value3,
COUNT(DISTINCT columnName = 'Value4') AS Value4,
COUNT(DISTINCT columnName = 'Value5') AS Value5,
COUNT(DISTINCT columnName = 'Value6') AS Value6,
COUNT(DISTINCT columnName = 'Value7') AS Value7,
COUNT(DISTINCT columnName = 'Value8') AS Value8,
COUNT(DISTINCT columnName = 'Value9') AS Value9,
COUNT(DISTINCT columnName = 'Value10') AS Value10,
COUNT(DISTINCT columnName = 'Value11') AS Value11,
COUNT(DISTINCT columnName = 'Value12') AS Value12,
COUNT(DISTINCT columnName = 'Value13') AS Value13,
COUNT(DISTINCT columnName = 'Value14') AS Value14,
COUNT(DISTINCT columnName = 'Value15') AS Value15,
unix_timestamp(timestamp) div 300 AS unix_timestamp_timestamp_div_300
FROM `table` WHERE (timestamp > '2013-12-15 15:50:00 -0800')
GROUP BY unix_timestamp(timestamp) div 300
我已经试过.Count中的多个版本的选项,并没有和.group,都没有运气。
编辑: 为了澄清,我们的目标是每5分钟获得一行,并计算5分钟内每个Value#标签有多少行。这将被用来为每个Value#创建一个包含数据序列的图。
编辑2戈登Linhoff指出的下方,查询应该是:
SELECT
sum(columnName = 'Value1') AS Value1,
sum(columnName = 'Value2') AS Value2,
sum(columnName = 'Value3') AS Value3,
sum(columnName = 'Value4') AS Value4,
sum(columnName = 'Value5') AS Value5,
sum(columnName = 'Value6') AS Value6,
sum(columnName = 'Value7') AS Value7,
sum(columnName = 'Value8') AS Value8,
sum(columnName = 'Value9') AS Value9,
sum(columnName = 'Value10') AS Value10,
sum(columnName = 'Value11') AS Value11,
sum(columnName = 'Value12') AS Value12,
sum(columnName = 'Value13') AS Value13,
sum(columnName = 'Value14') AS Value14,
sum(columnName = 'Value15') AS Value15,
unix_timestamp(timestamp) div 300 AS unix_timestamp_timestamp_div_300
FROM `table`
WHERE (timestamp > '2013-12-15 15:50:00 -0800')
GROUP BY unix_timestamp(timestamp) div 300
因此,MySQL是现在固定,在获取的Rails返回的东西,除了一堆=>零个对象模型的任何帮助吗?
为什么不添加columnName到GROUP? Value1,2,3等是否真的需要在单独的列中?和....(DISTINCT columnName ='string')与DISTINCT(IF(columnName ='string',1,0))相同,它可能不是你所需要的。 – aconrad