Buongiorno a tutti,
ho un problema che credo sia possibile risolvere lato db [MySql], ma non capisco bene come.
Tramite delle join su molte tabelle, ottengo come risultato una tabella del tipo
A | B | C | D | E | F
Ora, su questa tabella vorrei eseguire delle operazioni di calcolo.
Vorrei, per ogni riga, eseguire una moltiplicazione D * F e ottenere a questo punto la somma di tutte le moltiplicazioni D * F eseguite che abbiano il medesimo valore per la colonna A.
In realtà eseguo già queste operazioni con il PHP. Il problema è che l'elaborazione di questa query mi deve generare una tabella 70 * 90 e il tempo di elaborazione è troppo alto (siamo tra i 1.5 e i 2 secondi complessivi, compresa la query iniziale). Questo perchè è il PHP che deve iterare molte volte gli stessi risultati e il tutto porta via tempo.
Se invece riuscissi ad eseguire l'operazione di cui sopra, potrei giocare sull'ordinamento dei risultati e scrivere 'direttamente' i miei risultati, evitando di iterare le stesse operazioni più e più volte.
Il PHP non esegue solo le operazioni si moltiplicazione e somma, ma dovendo scrivere una tabella a mo di scacchiera, va a cercarsi dentro i risultati della query i valori corretti per ogni cella A1, A2 etc. Con le operazioni che sto cercando di far fare al db e ordinando i risultati, il PHP dovrebbe semplicemente scrivere riga per riga, ma senza più tornare sui suoi passi.
Spero di essere stato chiaro...
Grazie e chi voglia darmi una mano.