sql >> Database teknologi >  >> RDS >> PostgreSQL

Vis kolonnenavn med maks. værdi mellem flere kolonner

Det er et lærebogseksempel for en "simple" eller "switched" CASE sætning for at undgå kodegentagelse.

SELECT CASE greatest(denver, seattle, new_york, dallas, "san fran")
          WHEN denver      THEN 'denver'
          WHEN seattle     THEN 'seattle'
          WHEN new_york    THEN 'new_york'
          WHEN dallas      THEN 'dallas'
          WHEN "san fran"  THEN 'san fran'
       END AS city, *
FROM   tbl;

Den første på listen (fra venstre mod højre) vinder i tilfælde af uafgjort.



  1. Hvordan bruger jeg PostgreSQL JSON(B)-operatorer, der indeholder et spørgsmålstegn? via JDBC

  2. PHP caching sql resultater

  3. Forespørgsel med flere IN-klausuler på flere rækker

  4. auxService:mapreduce_shuffle eksisterer ikke