Co chcete, nemůže být proveden v čistém SQL.
V podstatě chcete SQL, který může podmíněně vybrat sloupec, který nemusí existovat. Takové SQL nebylo možné analyzovat – všechny vybrané sloupce musí existovat nebo bude dotaz neplatný.
Tohoto kódu aplikace však můžete dosáhnout dotazováním na katalogové tabulky, abyste zkontrolovali schéma databáze, ke které jste připojeni, a na základě toho dynamicky sestavte SQL.
Tento dotaz může pomoci kódu vaší aplikace sestavit váš dotaz:
select COLUMN_NAME
from INFORMATION_SCHEMA.COLUMNS
where TABLE_NAME = 'users'
and TABLE_SCHEMA = 'YOUR-DB-NAME';