Отдельное значение столбца как значение строки - PullRequest
0 голосов
/ 04 августа 2020

У меня есть таблица, как показано здесь:

Name          First Value      Second Value
---------------------------------------------
BestBuy       700               -250

Код, который я использую:

SELECT Name, First Value, Second Value
FROM TABLE_A

Я хочу следующее:

Name          First Value
----------------------------
BestBuy        700 
BestBuy       -250

Ожидаемое значение теперь будет дополнительным значением под первым значением, то есть вместо получения дополнительного значения столбца я должен добавить дополнительную строку. Есть идеи, как я могу этого добиться?

Ответы [ 3 ]

1 голос
/ 04 августа 2020

Вы можете использовать apply:

select a.name, v.market_value
from table_a a
cross apply  (values (market_value), (pending_value)) v(market_value);
0 голосов
/ 04 августа 2020

Вы также можете использовать unpivot, как показано ниже:

SELECT [Name], val AS [Market Value]
FROM @t t
UNPIVOT
(
  val for col in ([Market Value], [Pending Value])
) UPVT

db <> fiddle

0 голосов
/ 04 августа 2020

Вы можете использовать UNION ALL, например:

SELECT Name, [Market Value] FROM TABLE_A
UNION ALL 
SELECT Name, [Pending Value] FROM TABLE_A
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...