Visualizzazione dei risultati da 1 a 9 su 9

Discussione: [mysql] select con and

  1. #1

    [mysql] select con and

    Ciao a tutti, scusate il titolo ma non saprei bene come definire la cosa. Ho la necessità di fare un controllo nella select e non ho idea di come farla. In pratica dovrei ottenere il risultato dell'and tra 3 campi e metterlo in una colonna. qualcosa del tipo "select valore as colonna1 from tabella" dove valore è ottenuto calcolando l'and tra tre colonne con valori boolean. come posso fare?
    grazie a tutti

  2. #2
    spiegati meglio, fa' un esempio, grazie

  3. #3
    in pratica ho una select che prende i dati da tante tabelle e mi servirebbe ottenere il valore di (campo1 & campo2 & campo3) inserendo nella select. qualcosa del tiplo
    select ..., (campo1 & campo2 & campo3) as valore from ...
    in modo che quando viene eseguita la query ottengo il valore true/false nella colonna valore
    spero di essermi spiegato meglio

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    codice:
    select
    *,
    col1 and col2 and col3 as valore
    from tabella

  5. #5
    l'avevo pensato ma mi sembrava troppo semplice come cosa! :P
    ok allora ora è il problema è che uno dei valori può essere nullo e a me serve che nella colonna finale mi dia true se (oltre alle altre due condizioni) non è nullo. se faccio qualcosa del tipo "select colonna1 is not null and colonna2 and colonna3 from tabella" può andare?
    colonna1 ha un valore numerico non è true/false

  6. #6
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Usa coalesce().

    codice:
    select
    *,
    coalesce(col1,0) and coalesce(col2,0) and coalesce(col3,0) as valore
    from tabella

  7. #7
    non conoscendo la funzione ho cercato su google e mi pare di capire che prende il primo valore non nullo che ha nella lista, corretto? a me però serve che mi di true se la colonna non ha un valore nullo e false se è nullo. In questo modo posso poi metterlo in and con le altre due colonne che hanno valori true/false

  8. #8
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Mi pare di capire che voglia ottenere 1 SOLO se tutti e tre i campi hanno valore 1.
    Se un campo è pari a null, tramite coalesce lo rendi uguale a 0 e il mio esempio farà esattamente questo.

  9. #9
    ah ok, perfetto. non avevo ben capito il funzionamento della funzione allora. Grazie

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.