mmmmaria, il tuo approccio e' sbagliato. prima fai una select all (*), e poi dici: se questo campo NON e' x, allora fallo vedere. e' come portare in tavola TUTTE le posate che hai in casa, e poi usarne solo due: la logica ti dice: prendi SOLO quelle due che ti servono.

cosi' e' per la SELECT

SELECT * ... ---> prende tutto

SELECT campo_nome, campo_cognome ... ---> preleva solo i campi "campo_nome" e "campo_cognome"

usa la seconda sintassi, elencando i campi che vuoi vedere. ovviamente eliminerai quella IF chilometrica dove controlli i nomi dei campi.