Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    18

    Controllo doppio su query mysql

    Ciao a tutti, ho questo quesito da porvi.
    non so se è possibile farlo ma magari potete aiutarmi a trovare una soluzione.

    in pratica io ho una tabella del db dove ho una colonna "nome" una "capacità" e una "dati"

    io dovrei visualizzare in un select html la lista dei "nomi" che hanno una certa "capacità" e un certo "dato". se fossero tutti e due nella stessa riga non sarebbe un problema ma il fatto è che la capacità e il dato possono essere in righe diverse.

    es:

    NOME | CAPACITà | DATI
    rossi | -- | 1
    bianchi | 3 | --
    rossi | 1 | --
    bianchi | -- | 2

    ecc...


    io se cerco la persona che ha il dato 2 e la capacità 3 come posso fare in modo che mi esca solo una volta il nome BIANCHI??

    ci avete capito qualcosa?

    grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    636
    SELECT DISTINCT nome
    FROM tabella
    WHERE capacita =3
    OR dati =2

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    18
    Originariamente inviato da longilineo
    SELECT DISTINCT nome
    FROM tabella
    WHERE capacita =3
    OR dati =2


    Eh no! o almeno credo!
    io dovrei selezionarlo solo se ha tutti e due quei record quindi un OR non va bene dovrei metterci un AND ma con l' AND mi controlla solo una riga o almeno così mi sembra perchè infatti non mi trova niente.

    dovrei fare un controllo che se al nome BIANCHI in una qualsiasi riga esiste un dato e in un altra qualsiasi riga esiste anche la capacità richiesta allora lo seleziona altrimenti no!

    grazie dell'aiuto comunque!

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    636
    prova così:

    codice:
    SELECT DISTINCT nome
    FROM (
    
    SELECT nome, capacita
    FROM prova1
    WHERE capacita =3
    ) AS c
    NATURAL JOIN (
    
    SELECT nome, dati
    FROM prova1
    WHERE dati =2
    ) AS d

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    18
    Originariamente inviato da longilineo
    prova così:

    codice:
    SELECT DISTINCT nome
    FROM (
    
    SELECT nome, capacita
    FROM prova1
    WHERE capacita =3
    ) AS c
    NATURAL JOIN (
    
    SELECT nome, dati
    FROM prova1
    WHERE dati =2
    ) AS d
    scusate sono stato un po impegnato comunque grazie mille per l'aiuto, funziona perfettamente.


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.