Как транспонировать таблицу для поиска минимального значения?
Добрый день.
Есть таблица
create table #t (a int,
q int,
w int,
e int,)
insert #t values (0,1,2,3)
insert #t values (0,3,1,2)
insert #t values (0,2,1,3)
insert #t values (0,2,3,1)
Как мне ее транспонировать? Везде ссылки на pivot, но я не могу сообразить как это применить к моей таблице.
Вообще мне надо найти минимальное значение в строке. Поэтому я решил транспонировать, воспользоваться MIN() и затем транспонировать обратно.
Pivot тебе тут не поможет. можно попробовать скриптом указанным ниже, но мне кажется некорректный пример приведен, т.к. не понятно в чем смысл
SELECT TOP (1) WITH TIES *
FROM (
SELECT a column_a, 'q' AS column_name, q as column_value
FROM #t AS t
UNION all
SELECT a, 'w' AS column_name, w
FROM #t AS t
UNION all
SELECT a, 'e' AS column_name, e
FROM #t AS t
) AS g
ORDER BY g.column_value
DECLARE @t TABLE (a INT, q INT, w INT, e INT )
INSERT @t VALUES (0,1,2,3), (5,4,2,6), (7,1,2,8), (7,9,2,0), (0,0,1,3), (3,1,1,0)
SELECT a, q, w, e, IIF( w < e, IIF( q < w, IIF( a < q, a, q ), w ), e ) AS tMIN
FROM @t