Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

SSRS 2005 znajdź nazwę kolumny o maksymalnej wartości

Możesz użyć UNPIVOT funkcja i CROSS APPLY aby to uzyskać:

;with cte as
(
  select col, value
  from yourtable
  unpivot
  (
    value
    for col in ([Step X], [Step W], [Step A], [Step B], [Step Y])
  ) unpiv
) 
select [Step X], 
  [Step W], 
  [Step A], 
  [Step B], 
  [Step Y],
  d.col LastStep
from yourtable
cross apply
(
  select c1.col
  from cte c1
  inner join
  (
    select max(value) MaxDate
    from cte
  ) c2
    on c1.value = c2.maxdate
) d

Zobacz SQL Fiddle z wersją demonstracyjną




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. W odnośnej tabeli nie ma kluczy podstawowych ani kandydujących

  2. Zapytanie SQL, aby uzyskać zagregowany wynik w separatorach przecinków wraz z grupowaniem po kolumnie w SQL Server

  3. Porównanie dwóch masek bitowych w SQL w celu sprawdzenia, czy któryś z bitów pasuje

  4. Wskazówki dotyczące przenoszenia bazy danych SQL Server z jednego serwera na drugi — samouczek SQL autorstwa Rajana Singha

  5. SQL, aby uzyskać następną niepustą wartość w kolumnie