Torna indietro   Hardware Upgrade Forum > Software > Programmazione

ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm
ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm
ASUS e HIFIMAN uniscono le forze per creare ROG Kithara, cuffie gaming con driver magnetici planari da 100mm, design open-back e microfono MEMS full-band. Una proposta che ambisce a coniugare fedeltà per audiofili e performance ludiche, disponibili a 319 euro
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-02-2008, 15:46   #1
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
[mysql]select su molte tabelle

Ciao a tutti

Ho un database che dovrebbe gestire un parco auto. In questo database, ci sono diverse tabelle, tipo:

anagraficaVetture - assicurazioni - rifornimentiMese - scadenze - riparazioni...

tutte queste tabelle hanno in comune un campo di tipo intero che si chiama:

id_vettura.

Nelle tabelle come rifornimentiMese, scadenze, riparazioni, è presente un altro campo per l'identificazione del mese nel quale si inseriscono i dati.

Quello che mi viene chiesto, è di tirar fuori un listato che mi raggruppi tutti questi dati in un'unica visuale di questo tipo:

Codice:
//abbrevio per sintetizzare
modello | targa | importoAssicurazione | totaleRifornimenti | totaleScadenze
-------------------------------------------------------------------------
fiat         111                 1.000,00               560.00               459.00
seat
Mi dareste qualche dritta?

grazie

RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 22-02-2008, 19:42   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Scusa...e che ci sarebbe di complicato ? Si tratta di fare qualche group by id_vettore ed applicare la funzione di aggregazione Sum.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 13:27   #3
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Ciao

Allora, per semplificare un pò le cose mi sono creato delle viste su alcune tabelle in modo da avere già il raggruppamento di alcuni dati. Quello che succede però quando vado ad effettuare la query complessiva, è che ottengo una marea di doppioni.

La query è questa:

Codice:
SELECT vetture.appartenenza, vetture.modello, vetture.targa,
assicurazioni.importo, totalManutenzioniMese.totaleman,
totalRifornimentiMese.TotaleEuro, totalScadenzeMeseNew.totalscad
from vetture, assicurazioni, totalManutenzioniMese, totalRifornimentiMese, totalScadenzeMeseNew
where vetture.id_vet = totalManutenzioniMese.id_vet
and vetture.id_vet = assicurazioni.id_vet
and vetture.id_vet = totalRifornimentiMese.id_vet
and vetture.id_vet = totalScadenzeMeseNew.id_vet
group by totalManutenzioniMese.id_mese, totalRifornimentiMese.id_mese, totalScadenzeMeseNew.id_mese
Succede che mi trovo ogni riga replicata due o più volte.

Grazie

RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 13:30   #4
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
prova con SELECT DISTINCT...
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 13:34   #5
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da wisher Guarda i messaggi
prova con SELECT DISTINCT...
nulla, nel senso che non ho doppioni ma mi mancano una marea di risultati.

C'è qualcosa proprio nella logica che sto cercando di applicare che è totalmente sbagliata.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 14:30   #6
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
SELECT A.vettura_id, A.targa, A.modello, SommaAssicurazione, SomamScadenze, SommaRifornimenti FROM
(SELECT vetture.vettura_id, SUM(importo) AS SommaAssicurazione FROM vetture JOIN assicurazioni ON vetture.vettura_id = assicurazioni.vettura_id GROUP BY vetture.vettura_id) AS A
JOIN (SELECT vetture.vettura_id, SUM(importo) AS SommaScadenze FROM vetture JOIN scadenze ON vetture.vettura_id = scadenze.vettura_id GROUP BY vetture.vettura_id) AS B ON A.vettura_id = B.vettura_id
JOIN (SELECT vetture.vettura_id, SUM(importo) AS SommaRifornimenti FROM vetture JOIN rifornimenti ON vetture.vettura_id = rifornimenti.vettura_id GROUP BY vetture.vettura_id) AS C ON A.vettura_id = C.vettura_id;

Ultima modifica di cionci : 29-02-2008 alle 14:38.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 15:39   #7
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da cionci Guarda i messaggi
SELECT A.vettura_id, A.targa, A.modello, SommaAssicurazione, SomamScadenze, SommaRifornimenti FROM
(SELECT vetture.vettura_id, SUM(importo) AS SommaAssicurazione FROM vetture JOIN assicurazioni ON vetture.vettura_id = assicurazioni.vettura_id GROUP BY vetture.vettura_id) AS A
JOIN (SELECT vetture.vettura_id, SUM(importo) AS SommaScadenze FROM vetture JOIN scadenze ON vetture.vettura_id = scadenze.vettura_id GROUP BY vetture.vettura_id) AS B ON A.vettura_id = B.vettura_id
JOIN (SELECT vetture.vettura_id, SUM(importo) AS SommaRifornimenti FROM vetture JOIN rifornimenti ON vetture.vettura_id = rifornimenti.vettura_id GROUP BY vetture.vettura_id) AS C ON A.vettura_id = C.vettura_id;
e meno male che era banale

Grazie mille Ora provo!
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 15:51   #8
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
E che c'è di difficile ? Sono 3 sotto query in cui si raggruppa e si fa la somma...e dopo si fa il JOIN delle sottoquery...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 19:01   #9
maxithron
Senior Member
 
L'Avatar di maxithron
 
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
Quote:
Originariamente inviato da cionci Guarda i messaggi
E che c'è di difficile ? Sono 3 sotto query in cui si raggruppa e si fa la somma...e dopo si fa il JOIN delle sottoquery...
pesantemente OT:

un grosso saluto cionci

Sono ospite di 'raoullino' ora ci penserò io a lui
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n;
Utilizzando atomi trivalenti drogheremo il silicio di tipo p;
Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo
maxithron è offline   Rispondi citando il messaggio o parte di esso
Old 29-02-2008, 19:04   #10
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Ma ciao !!!

So che Raul è in buone mani
Passa più spesso da queste parti
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm ASUS ROG Kithara: quando HIFIMAN incontra il gam...
Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Microsoft Highlight Reels: clip e montag...
Una nuova partnership per i TV Panasonic...
NIO batte il suo record di scambio batte...
Verona ha i bus del futuro: 34 mezzi ele...
Changan risponde presente: batterie allo...
Creatore di Telegram accusato di terrori...
Microsoft prepara molte novità le...
Alcolock obbligatorio da oggi: ecco chi ...
Intel Unified Core: un annuncio di lavor...
Nikon rinnova il suo telezoom profession...
Ci sarà una nuova serie di Evange...
ESA Space Rider: superato un test per lo...
Horse e Repsol hanno costruito il protot...
Beats Solo 4 a 111€: le iconiche cuffie ...
IBM crolla in Borsa (-13%) dopo l'annunc...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 06:12.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v