E' da giorni che ci sto dietro![]()
Chiedo aiuto a voi...
In pratica voglio trovare i fornitori convenzionati con il corriere che ha il prezzo di consegna più basso per una data categoria.
Tabella tipi_consegna
corriere
tipo
area_coperta
peso_max
dimensione_max
tempi_max
prezzo
Tabella registrazione_fornitori
nome
indirizzo
citta
convenzione1
convenzione2
Tabella prodotti
id
nome
prezzo
descrizione
cond_vendita
categoria
abbinamento
fornitore
corriere
Io ho provato così ma mi controlla prima la convenzione1 e poi la colonna convenzione2 in modo indistinto...pur essendoci l'unione...
SELECT registrazione_fornitori.nome,tipi_consegna.corrier e, tipi_consegna.prezzo as min
FROM registrazione_fornitori, tipi_consegna, prodotti
WHERE registrazione_fornitori.convenzione1=tipi_consegna .corriere
AND registrazione_fornitori.nome=prodotti.fornitore
AND categoria='$categoria'
AND tipi_consegna.prezzo =
(SELECT min(tipi_consegna.prezzo)
FROM registrazione_fornitori, tipi_consegna, prodotti
WHERE registrazione_fornitori.convenzione1=tipi_consegna .corriere
AND registrazione_fornitori.nome=prodotti.fornitore
AND categoria='$categoria')
GROUP BY nome
UNION
SELECT registrazione_fornitori.nome,tipi_consegna.corrier e, tipi_consegna.prezzo as min
FROM registrazione_fornitori, tipi_consegna, prodotti
WHERE registrazione_fornitori.convenzione2=tipi_consegna .corriere
AND registrazione_fornitori.nome=prodotti.fornitore
AND categoria='$categoria'
AND tipi_consegna.prezzo =
(SELECT min(tipi_consegna.prezzo)
FROM registrazione_fornitori, tipi_consegna, prodotti
WHERE registrazione_fornitori.convenzione2=tipi_consegna .corriere
AND registrazione_fornitori.nome=prodotti.fornitore
AND categoria='$categoria')
GROUP BY nome
Grazie a tutti ragazzi...anke se solo avete letto il mio problema...