Perfetto nman.
Ho sostituito le INNER JOIN con le LEFT JOIN ottenendo così un recordset completo di tutti gli articoli con o senza i movimenti.
Però non so se, nonostante il risultato è quello atteso, la sequenza con cui queste si susseguono è esatta ed in seguito potrebbe darmi problemi.
Le due query modificate sono quelle che mostro qui di seguito:
la prima:
La seconda :Codice PHP:$Query = "SELECT sql_mag_articoli.id_articolo,
CONCAT_WS(' ', sql_mag_fornitori.rag_sociale, sql_mag_articoli.descr_articolo) AS prodotto,
SUM(sql_mag_acquisti.qta_acquisto) AS qta
FROM
sql_mag_fornitori LEFT JOIN sql_mag_articoli ON sql_mag_fornitori.id_fornitore = sql_mag_articoli.id_fornitore
LEFT JOIN sql_mag_acquisti ON sql_mag_acquisti.id_articolo = sql_mag_articoli.id_articolo
GROUP BY (prodotto)
ORDER BY sql_mag_articoli.id_articolo";
Il risultato ovviamente è sempre questoCodice PHP:$Query = "SELECT sql_mag_articoli.id_articolo,
CONCAT_WS(' ', sql_mag_fornitori.rag_sociale, sql_mag_articoli.descr_articolo) AS prodotto,
SUM(sql_mag_acquisti.qta_acquisto) AS qta_acquistata,
SUM(sql_mag_vendita.qta_vendita) AS qta_venduta,
(SUM(sql_mag_acquisti.qta_acquisto) - SUM(sql_mag_vendita.qta_vendita)) AS giacenza
From
sql_mag_articoli LEFT JOIN sql_mag_fornitori USING (id_fornitore)
LEFT JOIN sql_mag_acquisti USING (id_articolo)
LEFT JOIN sql_mag_vendita USING (id_articolo)
GROUP BY (prodotto)
ORDER BY sql_mag_articoli.id_articolo";
http://mikevba.altervista.org/nuovo/...situazione.php

Rispondi quotando