[PHP] Problemi con select

Discussione in 'PHP' iniziata da Max61, 15 Maggio 2019.

  1. Max61

    Max61 Utente Attivo

    Registrato:
    2 Marzo 2014
    Messaggi:
    562
    Mi Piace Ricevuti:
    2
    Punteggio:
    18
    Salve sono di nuovo di fronte ad un problema che non riesco a risolvere ho la query sotto che mi dovrebbe estrarre tutti i record dove i campi sono
    -stato='Incarico accettato' e stato='Rinuncia-conclusa prima fase'-
    e -tipo = 'Interno' -
    PHP:
    SELECT idRilevatoretipotipoincaricostatofam_ass_totfam_int_totpercen_totAnno
    FROM tblrilevatori WHERE stato
    ='Incarico accettato' OR stato='Rinuncia-conclusa prima fase' AND Anno='$Anno' AND tipo 'Interno' ORDER BY tipoincarico ASC
    mentre invece mi prende anche i record con
    -tipo = 'Esterno'
    perchè anch'essi hanno il campo
    stato='Rinuncia-conclusa prima fase'-

    Qualcuno sa darmi una dritta?
    Grazie
    Max61
     
  2. marino51

    marino51 Utente Attivo

    Registrato:
    28 Febbraio 2013
    Messaggi:
    2.471
    Mi Piace Ricevuti:
    122
    Punteggio:
    63
    Occupazione:
    free lance
    Località:
    Lombardia
    Codice:
    ... WHERE ( stato='Incarico accettato' OR stato='Rinuncia-conclusa prima fase' ) AND ....
     
  3. Max61

    Max61 Utente Attivo

    Registrato:
    2 Marzo 2014
    Messaggi:
    562
    Mi Piace Ricevuti:
    2
    Punteggio:
    18
    Grazie Marino51, l'errore sta li lo so, ma se cambio OR con AND non mi estrae nulla...
    WHERE ( stato='Incarico accettato' AND stato='Rinuncia-conclusa prima fase' ) AND
    probabilmente ci vuole un'altro tipo di query più complessa che io non so fare...
     
  4. marino51

    marino51 Utente Attivo

    Registrato:
    28 Febbraio 2013
    Messaggi:
    2.471
    Mi Piace Ricevuti:
    122
    Punteggio:
    63
    Occupazione:
    free lance
    Località:
    Lombardia
    scusami, io ho lasciato la condizione OR come deve essere, ho solo messo le parentesi tonde
    non capisco perché vuoi mettere AND, perché stato non può essere
    uguale a 'Incarico accettato'
    E (AND) contemporaneamente
    uguale a ='Rinuncia-conclusa prima fase'

     
  5. Max61

    Max61 Utente Attivo

    Registrato:
    2 Marzo 2014
    Messaggi:
    562
    Mi Piace Ricevuti:
    2
    Punteggio:
    18
    Scusa non avevo visto le parentesi, ma facendo così estrae tutti i record nel db
     
  6. marino51

    marino51 Utente Attivo

    Registrato:
    28 Febbraio 2013
    Messaggi:
    2.471
    Mi Piace Ricevuti:
    122
    Punteggio:
    63
    Occupazione:
    free lance
    Località:
    Lombardia
    di nuovo scusami, le parentesi dovevi aggiungerle alla tua query, nella posizione in cui le ho messe, senza modificare altro
    riposto la tua query modificata con le parentesi, per favore provala facendo un copia/incolla senza modificare nulla
    Codice:
    SELECT id, Rilevatore, tipo, tipoincarico, stato, fam_ass_tot, fam_int_tot, percen_tot, Anno
      FROM tblrilevatori
     WHERE ( stato='Incarico accettato' OR stato='Rinuncia-conclusa prima fase' )
       AND Anno='$Anno'
       AND tipo = 'Interno'
     ORDER BY tipoincarico ASC
     
  7. Max61

    Max61 Utente Attivo

    Registrato:
    2 Marzo 2014
    Messaggi:
    562
    Mi Piace Ricevuti:
    2
    Punteggio:
    18
    FUNZIONA!!!
    Grazie
    Max61
     
Sto caricando...

Condividi questa Pagina