Ciao a tutti avrei bisogno di un aiutino con 2 query che riguardano più o meno lo stesso argomento:
Ho una tabella con:
Ho la necessità di calcolare la somma dei tempi accumulati per ogni intervento e farne una media.codice:Tabella: Tempi Campi: Id, Intervento, tempo_accumulato, priorita
Per ora con questo codice riesco ad avere il tempo totale per ogni intervento
Il problema è fare la media di questi tempi e restituire quindi un valore unico. Purtroppo ho provato a usare la funzione avg in vari modi, a dividere il risultato per un count che mi contava gli interventi e vari modi ma non sono mai riuscito ad ottenere il risultato sperato.codice:Select sec_to_time(sum(tempo_accumulato))as Tab, intervento from tempi where intervento > 14589 group by intervento
Quindi avrei bisogno di qualche consiglio su come modificare la query affinche mi restituisca una media corretta.
__________________________________________________ ____codice:Per facilitare posto un esempio ID - Intrv - Priorita - tempo_acccumulato 01 - 10 - 1 - 50 02 - 10 - 1 - 10 03 - 11 - 2 - 25 04 - 10 - 1 - 19 05 - 11 - 1 - 60 Risultato Attuale: Tempo Totale - Intervento - Priorita 00:01:19 - 01 - 1 00:01:25 - 02 - 2 Risultato Da Ottenere: Tempo Totale 00:01:22 (la media quindi senza riferimenti a intervento e priorita)
Il secondo problema invece è relativo ad una query che deve fare sempre la media del tempo accumulato però suddividerlo per priorità e pescare la prima priorità per ogni intervento.
Per recuperare la prima priorità per id ho usato questa query
In questo caso ottengo un risultato analogo a sopra in quanto i record ottenuti hanno questa formacodice:Select intervento, priorita from tempi where id in (select * from (select min(id) as id from tempi group by intervento) as tab) group by intervento
Anche in questo caso ho bisogno di ottenere un risultato simile:codice:intrv - priorita 10 - 1 11 - 2
Tempo Totale - Priorita
00:01:19 - 1
00:01:25 - 2
Dove però i tempi sono ottenuti dalla media del totale dei tempi, ricavato raggruppando gli interventi a seconda della loro prima priorità.
Sperando che qualcuno riesca a capire la mia richiesta ringrazio anticipatamente tutti!![]()

Rispondi quotando