condizioni if then else all interno di una query??

  • Creatore Discussione Creatore Discussione gian21
  • Data di inizio Data di inizio

gian21

Nuovo Utente
16 Mag 2013
23
0
0
Salve a tutti la domanda che mi pongo e questa qui.
Ho un database con i campi
Squadra p2013 p2014 anno1 anno2 anno3
Napoli. 34. 45. A. B A
Real 87. 99. A. A B

mi servirebbe una query che mi calcolasse i punti ad esempio della squadra napoli quando e stata i A e un altra di quando e stata in B ma con la funzione Where non dividere queste due somme insomma
come posso fare.?

ho provato a fare cosi
:
select *, (p2013+p2014) as Somma, 0 as sb FROM squadre JOIN serie ON squadreid = squadre.id where anno1='A' AND anno2='A' UNION
select *, 0 as Somma, p2014 as sb FROM squadre JOIN serie ON squadreid = squadre.id where anno1='B' or anno2='B' ORDER BY Somma DESC");

ma in questo caso mi calcola solo i punti di quando si e stati in a O i punti di quando si e stati in B e non tutti e due .
grazie
 
Squadra p2013 p2014 anno1 anno2 anno3
Napoli. 34. 45. A. B A
Real 87. 99. A. A B

mi servirebbe una query che mi calcolasse i punti
ad esempio della squadra napoli quando e stata i A e un altra di quando e stata in B

considerato che hai i punti di 2 anni e la serie per 3 anni,
con i numeri che hai postato, puoi fare un esempio del risultato che vuoi ottenere ?
ciao
Marino
 
Secondo me hai sbagliato a creare il db in quel modo.
L'anno prossimo cosa farai? Aggiungerai un altro campo? E così via per gli altri anni.
La tecnica giusta è creare il db di base e aggiungere solo righe al db, i campi dovrebbero rimanere sempre quelli.

Modificando il db il tutto sarà più semplice da gestire, anche quello che vuoi fare tu ora.

Nota che se continui ad usare la tecnica che stai usando tu ogni anno dovrai cambiare anche tutte le query ovviamente.
 

Discussioni simili