Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Возможно ли это реализовать?  [new]
lexmove
Member

Откуда:
Сообщений: 13
Приветствую.
Возможно ли преобразовать первую таблицу(полученную из запроса) ко второй таблице(группировка по первому столбцу)?

Первая таблица
 
-------------------
| A1 | 1 | X1 |
| A1 | 2 | X2 |
| A1 | 3 | X3 |
| B1 | 1 | X4 |
| B1 | 2 | X5 |
| B1 | 3 | X6 |
--------------------

Хочу получить
 
---------------
| A1 | B1 |
| X1 | X4 |
| X2 | X5 |
| X3 | X6 |
---------------
19 ноя 15, 18:28    [18443099]     Ответить | Цитировать Сообщить модератору
 Re: Возможно ли это реализовать?  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8335
lexmove,

PIVOT.
19 ноя 15, 18:33    [18443128]     Ответить | Цитировать Сообщить модератору
 Re: Возможно ли это реализовать?  [new]
Добрый Э - Эх
Guest
lexmove,

а если в исходных данных будет не только A1, B1, но ещё и С1, D1, то как должен будет выглядеть результат той выборки?

Первая таблица
 
-------------------
| A1 | 1 | X1 |
| A1 | 2 | X2 |
| A1 | 3 | X3 |
| B1 | 1 | X4 |
| B1 | 2 | X5 |
| B1 | 3 | X6 |
| C1 | 1 | X7 |
| C1 | 2 | X8 |
| C1 | 3 | X9 |
| D1 | 1 | X10 |
| D1 | 2 | X11 |
| D1 | 3 | X12 |
--------------------
20 ноя 15, 06:06    [18444857]     Ответить | Цитировать Сообщить модератору
 Re: Возможно ли это реализовать?  [new]
Jovanny
Member

Откуда:
Сообщений: 1196
Конечно, извращение.
WITH S AS (SELECT C1, C2, C3
    FROM(VALUES('A1', 1, 'X1'),
               ('A1', 2, 'X2'),
               ('A1', 3, 'X3'),
               ('B1', 1, 'X4'),
               ('B1', 2, 'X5'),
               ('B1', 3, 'X6')) AS T(C1, C2, C3)),
F AS (SELECT DISTINCT C1 FROM S)
SELECT [A1], [B1] FROM F
PIVOT (MIN(C1) FOR C1 IN ([A1], [B1])) AS P
UNION ALL
SELECT [A1], [B1] FROM S 
PIVOT (MIN(C3) FOR C1 IN ([A1], [B1])) AS P
20 ноя 15, 09:50    [18445263]     Ответить | Цитировать Сообщить модератору
 Re: Возможно ли это реализовать?  [new]
lexmove
Member

Откуда:
Сообщений: 13
Ребят, спасибо за помощь!
20 ноя 15, 17:19    [18448983]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить