Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Una query particolare

  1. #1
    Utente di HTML.it L'avatar di natasha
    Registrato dal
    Sep 2000
    Messaggi
    1,307

    Una query particolare

    Buonasera a tutti,
    immaginate di avere una tabella con due campi, "nome" e "valore", con "valore" che può assumere solo due valori, ad. es. "vero" e "falso", così:

    nome | valore |
    -----------------
    Gianni | vero |
    Giuseppe| vero |
    Alex | falso |
    Gianni | falso |
    Pino | vero |
    Giuseppe| falso |
    Piero | falso |
    Gianni | vero |

    Come faccio, usando solo SQL, a selezionare tutti quei nomi per cui il numero di "vero" è maggiore del numero di "falso", come "Gianni" nell'esempio precedente?

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    codice:
    select nome,
    sum(if(valore='vero',1,0)) as vero,
    sum(if(valore='falso',1,0)) as falso
    from tabella
    group by nome
    having vero > falso

  3. #3
    Utente di HTML.it L'avatar di natasha
    Registrato dal
    Sep 2000
    Messaggi
    1,307
    Diciamo che ci avrei tranquillamente passato la notte, senza arrivarci

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.