Ho 3 colonne in una tabella denominata "acquisti":Somma di moltiplicazione di colonne per righe con ID simili a MySQL
id amount price
2 2 21
2 5 9
3 8 5
voglio gruppo tutte le righe con ID simili e presentano tale matrice come risultato :
array([0] => [id => 2, total => 87 (because 2*21+5*9=87)], [1] => [id => 3, total => 40 (because 8*5=40)])
come conti totali per SUM (importo * prezzo) per le righe con ID simili.
Ho provato con
SELECT id, SUM(p.price*p.amount) total FROM purchases p GROUP by p.id
ma non funziona bene (vale a dire non raggiunge quello che voglio, che è quello che ho scritto sopra). Qualche idea su come farlo in mysql?
Un esempio di ciò che restituisce la query:
id amount price
2 3 89
2 3 19
SELECT id, SUM(p.price*p.amount) total FROM purchases p GROUP by p.id
==> [id => 2, total => 183]
Che cosa sta realmente facendo? Cosa vuoi che faccia? Sono le due cose vitali che ogni domanda dovrebbe avere. La frase "non funziona bene" non è un buon rapporto problema. – paxdiablo
Ho dato un esempio, leggi l'esempio. – Gal
Cosa * fa * restituisce? Quali sono i tuoi dati esatti? – jensgram