|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
[SQL] Righe di una tabella, colonne di una select...
Non sono sicuro che sia possibile ma ho le seguenti tabelle:
Codice:
UTENTE ---------- | ID | ---------- | pippo | | pluto | | minni | ---------- ENTITA' ---------- | mela | | pera | | banana | ---------- ASSOCIAZIONE |------------------- | 1 | pippo | mela | |------------------ | 2 | pippo | mela | |------------------- | 3 | pluto | pera | |------------------- vorrei per ogni utente contare le occorrenze entità (che sono in numero fisso) in questo modo: Codice:
-------------------------------- | ID | MELA | PERA | BANANA | -------------------------------| | pippo | 2 | 0 | 0 | -------------------------------| | pluto | 0 | 1 | 0 | -------------------------------| | minni | 0 | 0 | 0 | ------------------------------- impossibile? |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2007
Messaggi: 1092
|
Su myql la sintassi è questa, dove id nel tuo caso sarebbero pippo,pluto ecc.
Codice:
select id, sum(if(entita = 'mela',1,0)) as mela, sum(if(entita = 'pera',1,0)) as pera, sum(if(entita = 'banana',1,0)) as banana from associazione group by id |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
uso oracle 10g, ho controllato e la sintassi è questa:
SUM( CASE ASSOCIAZIONE WHEN 'MELA' THEN 1 ELSE 0 END) ti ringrazio moltissimo per l'idea, non avevo pensato di farlo in questo modo |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Prova a dare un'occhiata qua:
http://asktom.oracle.com/pls/asktom/...D:419593546543 oppure qua (verso fine pagina): http://www.akadia.com/services/ora_a...functions.html Sono entrambi link specifici su oracle.
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
|
@shinya: ottimi link, in particolare il secondo spiega l'utilizzo di decode() per quello che mi serve.
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 09:40.


















