Salve a tutti. Ho questo problema.
Una tabella è un'entità e ha come colonne un id e due colonne che chiamo per semplicità col1 e col2.
Poi ho una relazione che tra la tabella di prima e un'altra tabella.
Praticamente ho tabella1: ID1, col1, col2
tabella2: ID2
relazione: ID1, ID2.
A me serve fare una query che stampi tutti gli ID2 differenti e a fianco le somme di tutti i valori di col1 in cui sono presenti nella relazione ID2 e ID1. Solo che non me li stampa. Non so come fare.
Ho fatto questa query qua:
SELECT DISTINCT ID1, sum(col1)
FROM tabella1, relazione
WHERE tabella1.ID1 = relazione ID1
AND ID2 = 1
Faccio il distinct ID1 perchè la tabella relazione è in realtà una ternaria e quindi ha un'altra tabella con ID3. Può capitare quindi che ci siano più tuple con ID1, ID2. A me serve che ogni tupla è calcolata una volta.
Dove sbaglio? Spero che si capisce cosa mi serve
Una tabella è un'entità e ha come colonne un id e due colonne che chiamo per semplicità col1 e col2.
Poi ho una relazione che tra la tabella di prima e un'altra tabella.
Praticamente ho tabella1: ID1, col1, col2
tabella2: ID2
relazione: ID1, ID2.
A me serve fare una query che stampi tutti gli ID2 differenti e a fianco le somme di tutti i valori di col1 in cui sono presenti nella relazione ID2 e ID1. Solo che non me li stampa. Non so come fare.
Ho fatto questa query qua:
SELECT DISTINCT ID1, sum(col1)
FROM tabella1, relazione
WHERE tabella1.ID1 = relazione ID1
AND ID2 = 1
Faccio il distinct ID1 perchè la tabella relazione è in realtà una ternaria e quindi ha un'altra tabella con ID3. Può capitare quindi che ci siano più tuple con ID1, ID2. A me serve che ogni tupla è calcolata una volta.
Dove sbaglio? Spero che si capisce cosa mi serve