Ciao a tutti, ho un problema, ho una DB di questo tipo:
ORDINE(ID, ID_OPERATORE)
OGGETTO(ID, ID_ORDINE, IMPORTO, ID_STATO, ID_FASE)
OPERATORE(ID, ID_NEGOZIO)
NEGOZIO(ID, DENOMINAZIONE)
OPERATORE_X_NEGOZIO(ID_OPERATORE,ID_NEGOZIO)
STATO(ID, DESCRIZIONE) --- Lo stato dell'oggetto, cioè venduto, in acquisto, in arrivo
A me serve ricavarmi una lista di negozi con i rispettivi dati, cioè una lista così fatta:
NEGOZIO --- SOMMA IMPORTO OGGETTI VENDUTI --- SOMMA IMPORTO OGGETTI IN ACQUISTO --- SOMMA IMPORTO OGGETTI IN ARRIVO
ho fatto una query che mi restituisce questi importi, ma se per caso in un negozio non risultano, oggetti in arrivo, o altri oggetti nella lista risultato non mi porta questi negozi, ed io vorrei che invece li portasse mettendo come valore "0"
questa è una query di esempio per la somma degli importi degli oggetti venduti
SELECT SUM(og.importo) AS venduto, n.denominazione
FROM oggetto og, operatore op, ordine or, negozio n, operatore_x_negozio on
WHERE og.id_fase = 26
AND (p.id_stato <> 19)
AND og.id_ordine = or.id
AND or.id_operatore = op.id
AND on.id_negozio = n.id
AND on.id_operatore = op.id
GROUP BY n.denominazione
ORDER BY n.denominazione
se possibile volevo consigli per fare una query dove gli importi vengono selezionati tutti insieme, sia quelli venduti, che gli altri. sennò va bene anche quella per un solo tipo di valore...
grazie mille!!!

Rispondi quotando
