|
MS SQL: соединить колонки независимо | ☑ | ||
|---|---|---|---|---|
|
0
extrim-style
26.11.15
✎
15:40
|
Кратко. Имеются 2 таблицы А(x,y), таблица B(x,z). Колонка x - одинаковая. Необходимо соединить таблицы в одну независимо. Для каждого значения x: если количество(y)>количество(z) - продлить колонку z последним значением y, и наоборот - если количество(z)>количество(y) - продлить колонку y последним значением z. Тип данных - строка.
Упрощенный пример (дополнять нужно именно последним, а не максимальным): таблица А: 1 11 2 21 2 22 3 31 3 32 3 33 3 34 таблица B 1 111 2 121 2 122 2 123 2 124 3 131 3 132 Итоговая таблица: 1 11 111 2 21 121 2 22 122 2 22 123 2 22 124 3 31 131 3 32 132 3 33 132 3 33 132 Исходный запрос для примера: if object_id('tempdb..#tbtest1') is not null drop table #tbtest1 if object_id('tempdb..#tbtest2') is not null drop table #tbtest2 select 1 as x,11 as y into #tbtest1 union all select 2,21 union all select 2,22 union all select 3,31 union all select 3,32 union all select 3,33 union all select 3,34 select 1 as x,111 as z into #tbtest2 union all select 2,121 union all select 2,122 union all select 2,123 union all select 2,124 union all select 3,131 union all select 3,132 select * from #tbtest1 select * from #tbtest2 |
|||
|
1
Гёдза
26.11.15
✎
15:42
|
по номеру строки что-ли?
|
|||
|
2
extrim-style
26.11.15
✎
15:43
|
(1) первая колонка не номер строки. Это упрощенный пример. Вообще там ссылки. Но будем считать, что строки любые.
|
|||
|
3
Гёдза
26.11.15
✎
15:44
|
по номеру строки в пределах группировки
|
|||
|
4
Гёдза
26.11.15
✎
15:44
|
у тебя номера и нет. в этом и проблема. а соединять по нему ты хочешь
|
|||
|
5
extrim-style
26.11.15
✎
15:46
|
(4) я хочу соединять по первому столбцу
|
|||
|
6
Гёдза
26.11.15
✎
15:47
|
(5) Первый столбец+номер строки. Как я и сказал в (3)
|
|||
|
7
Записьдампа
26.11.15
✎
18:09
|
(5) Если у тебя там ссылки, то надо вводить дополнительный столбец для сортировки - тот самый "номер строки". Понятие "Последний", по которому ты хочешь дополнять, подразумевает упорядоченность.
Переформулируй задачу как-нибудь =) |
|||
|
8
Shurjk2
26.11.15
✎
18:12
|
Надо тут не соединять, а объединять.
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |