Preciso da somatoria, ao invés de duas linhas.
Abri um tópico ontem, mas não sei como continuar, se eu fizer
SELECT id,date,machineId,BELLY_DOOR FROM `counters_history` order by date asc`
sai isso
então posso chegar nessa SQL
SELECT a.id, a.machineId, a.date, a.BELLY_DOOR,
abs((select min(c.BELLY_DOOR) from counters_history c
where a.machineId = c.machineId group by c.machineId limit 1) - BELLY_DOOR)
IN_BELLY_DOOR
FROM counters_history a
GROUP BY date, machineId
ORDER BY machineId, id`
e sai isso
então estou agrupando por maquina, esta me dando um diferencial da menor entrada, para a entrada atual. Mas eu só queria +1 detalhe, que mostre uma somatoria entre as maquinas pelo maior numero de cada maquina.
Exemplo: que ele pegue o id 179. que é 70.000 + o id 180 que é 0 pois a maquina não teve entrada alguma, total de entrada de todas as (duas) maquinas 70.000.
- tem como fazer isso?
- eu não posso usar a coluna IN_BELLY_DOOR, ou seja, pegar valor máximo de cada idmachine? Como?
eu estava tentando e cheguei nisso.
SELECT a.id, a.machineId, a.date, a.BELLY_DOOR,
(select max(c.BELLY_DOOR) from counters_history c where a.machineId = c.machineId group by c.machineId limit 1) -
(select min(c.BELLY_DOOR) from counters_history c where a.machineId = c.machineId group by c.machineId limit 1)
IN_BELLY_DOOR
FROM counters_history a
GROUP BY machineId
ORDER BY machineId, id
dai ele me retorna qual o resultado da maquina 1 e da maquina 2 e assim por diante.
mas eu quero só um somatoria das maquinas = 70.000
e depois que eu entendi que é melhor fazer separado. no ireport deve dar pra fazer 2 sqls pra sair no resultado final.
1 sql pra mostrar o relatorio, e uma la em baixo pra sair o resultado
nao tem como dar um
SELECT a.id, a.machineId, a.date, a.BELLY_DOOR,
sum(
(select max(c.BELLY_DOOR) from counters_history c where a.machineId = c.machineId group by c.machineId limit 1) -
(select min(c.BELLY_DOOR) from counters_history c where a.machineId = c.machineId group by c.machineId limit 1)
)
IN_BELLY_DOOR
FROM counters_history a
GROUP BY date, machineId
ORDER BY machineId, id
um sum
no meio desses selects
. eu preciso que seja só 1 resultado. 1 linha. tipo Soma das maquinas = 70.000.