sql >> Database teknologi >  >> RDS >> Mysql

Er det muligt dynamisk at vælge et kolonnenavn i MYSQL, hvor kolonnenavnet er 1 af N kendte værdier?

Jeg er fuldstændig enig med @Strawberrys kommentar at "dette lyder som en katastrofe på vej "—det er en meget dårlig designstrategi, og jeg anbefaler stærkt at finde en alternativ løsning. Det er dog en interessant udfordring... dette er min løsning:

SELECT COALESCE(title,label,name) col FROM `table` NATURAL LEFT JOIN (
  SELECT NULL title, NULL label, NULL name
) t WHERE COALESCE(title,label,name) IS NOT NULL

Se den på sqlfiddle .

Bemærk, at hvis registreringsdataene er NULL , ingen post vil blive returneret.



  1. Sådan opretter du forbindelse til Oracle ved hjælp af JRuby &JDBC

  2. postgresql misdannet array literal i create aggregeret initcond

  3. Jeg har opsætning af mysql og apache supersæt på dockers og forbundet med et bronetværk, hvad vil SQLAlchemy URI være?

  4. samme logget ind bruger tildelt forskellige session-id'er (i forskellige browsere)