sql >> Database >  >> RDS >> Sqlserver

SSRS 2005 vind naam van kolom met maximale waarde

U kunt de UNPIVOT . gebruiken functie en een CROSS APPLY om dit te krijgen:

;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

Zie SQL Fiddle met demo




  1. Oracle:Null- en niet-null-rijen tellen

  2. Inner join en delete werkt niet in mysql

  3. SQL-query voor paginering met meerdere kolommen; OR-operator begrijpen

  4. Onderdruk SQL*PLUS-fout in batchscript