Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Betman
Member

Откуда:
Сообщений: 28
Пробовал UNION, но он объединяет в один столбец.
Есть условие, что столбцы могут содержать разное количество строк.
10 мар 15, 21:50    [17367158]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
шрустальный шар
Guest
пронумеровать строки таблиц и FULL JOIN по полю нумератора
10 мар 15, 22:11    [17367224]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
a_voronin
Member

Откуда: Москва
Сообщений: 4804
шрустальный шар
пронумеровать строки таблиц и FULL JOIN по полю нумератора


Зачем нумеровать? Full Join по условию совпадения значений в строках. А уж как проверять равно ли одно значение другому, это вопрос к ТС.
10 мар 15, 22:31    [17367275]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
werd00
Member

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

Union объединяет в один, потому что вы одну колонку выбираете. Можно сделать так

select Table1.P1 as Col1,  null as Col2 from Table1
union all
select null as Col1,  Table2.P1 as Col2 from Table2


можно сделать join, как уже предлагали, правда пока непонятно условие и тип join'а

select Table1.P1 as Col1,  Table2.P1 as Col2 from Table1
join Table2
on ...


ну или так

select Table1.P1 as Col1,  Table2.P1 as Col2 from Table1, Table2
11 мар 15, 06:35    [17367698]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
SHok_by
Member

Откуда: Minsk
Сообщений: 51
хорошо бы дополнить что именно хочет получить автор темы на выходе.
небольшой пример будет более наглядно.
11 мар 15, 10:07    [17368116]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
werd00
Member

Откуда:
Сообщений: 21
SHok_by
хорошо бы дополнить что именно хочет получить автор темы на выходе.
небольшой пример будет более наглядно.

присоединяюсь. а то пока все очень "теоретически"
11 мар 15, 11:13    [17368531]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Betman
Member

Откуда:
Сообщений: 28
SHok_by, вот пример запроса. C UNION все колонки

SELECT трудовая_деятельность.место_работы AS 'Место работы'
FROM трудовая_деятельность			
GROUP BY трудовая_деятельность.место_работы

UNION 

SELECT трудовая_деятельность.должность AS 'Должность'
FROM трудовая_деятельность
GROUP BY трудовая_деятельность.должность


Результат на скриншоте.
В одном столбце смешались столбцы "должность" и "место_работы". А нужно, чтобы было 2 столбца, причём количество строк у них разное будет.

К сообщению приложен файл. Размер - 35Kb
11 мар 15, 12:56    [17369289]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Betman
Member

Откуда:
Сообщений: 28
werd00, пример есть. )
11 мар 15, 12:57    [17369295]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Betman
Member

Откуда:
Сообщений: 28
a_voronin, посмотрите пример мой. Никаких условий соединения нет, поэтому JOIN не помогут.
11 мар 15, 13:00    [17369317]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Betman
Member

Откуда:
Сообщений: 28
SHok_by, пробовал одним запросом всё сделать, но так как у меня группировка по двум полям, строки в одном столбце повторяются.
SELECT трудовая_деятельность.место_работы AS 'Место работы', трудовая_деятельность.должность AS 'Должность'
FROM трудовая_деятельность			
GROUP BY трудовая_деятельность.место_работы, трудовая_деятельность.должность


К сообщению приложен файл. Размер - 55Kb
11 мар 15, 13:03    [17369344]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
o-o
Guest
Betman,

вы что, из одной таблицы 2 поля вывести не можете? просто вывести 2 поля???

SELECT место_работы AS 'Место работы', должность AS 'Должность'
FROM трудовая_деятельность
11 мар 15, 13:07    [17369378]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Betman
Member

Откуда:
Сообщений: 28
o-o, умники собрались. Группировку по двум полям не забыли? Чтобы строки ни в одном из столбцов не повторялись.
11 мар 15, 13:10    [17369398]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Betman
Member

Откуда:
Сообщений: 28
o-o, помощь в студию.
11 мар 15, 13:17    [17369470]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
o-o
Guest
Betman,

да, умникам надо четко формулировать то, что надо слабоумникам.
до двух считать умеете? или столбцы с таблицами путаете?
пока что одна таблица в вашем супер-решении, хоть и 2 столбца
Betman
Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.
------------------------------------------------------------------------------------------
Пробовал UNION, но он объединяет в один столбец.
Есть условие, что столбцы могут содержать разное количество строк.
11 мар 15, 13:18    [17369488]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Betman
Member

Откуда:
Сообщений: 28
o-o, а ты всё, что выше, прочитал? Я пример привёл простенький. Остряк.
11 мар 15, 13:21    [17369517]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Добрый Э - Эх
Guest
Betman,

и какую же из должностей упразднять, если по месту работы их будет более одной?
для 1С кого оставляем - простого буха или главного? а в НПО МАрс кого оставим - вебера или главного? Тот же вопрос про симбирсофт...

вот сначала определись с хотелками, а после - помощи проси...
11 мар 15, 13:23    [17369550]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
invm
Member

Откуда: Москва
Сообщений: 9406
Betman,

Вам что, абсолютно все равно будет ли в итоговом наборе должность соответствовать месту работы?
11 мар 15, 13:24    [17369556]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Betman
Member

Откуда:
Сообщений: 28
Добрый Э - Эх, эти два поля не должны быть никак связаны. Мне нужно просто вывести 2 совершенно несвязанных столбца, притом сгруппированных только по своему столбцу. В этом проблема.
11 мар 15, 13:27    [17369596]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Betman
Member

Откуда:
Сообщений: 28
invm, да. Это просто пример.
11 мар 15, 13:27    [17369600]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Добрый Э - Эх
Guest
Betman,

первый же ответ на твой вопрос смотри, тот что от хрустального шара.
перенумеруй хоть всё тем же row_number-ом каждый столбец в отдельности и свяжи результат нумерации по столбцу-нумератору
11 мар 15, 13:30    [17369622]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
o-o
Guest
invm
Betman,

Вам что, абсолютно все равно будет ли в итоговом наборе должность соответствовать месту работы?

похоже, это у него и так есть.
а теперь надо, чтобы они стали несвязаны, без повторений:
есть
c1 c2
вася программист
алекс программист


а надо:
c1 c2
вася программист
алекс


11 мар 15, 13:30    [17369625]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
Betman
Member

Откуда:
Сообщений: 28
o-o, правильно. Это для того, чтобы вывести в одной таблице совершенно несвязанные данные в JTable на Java
11 мар 15, 13:34    [17369660]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
SHok_by
Member

Откуда: Minsk
Сообщений: 51
как то так:
select 'Место работы', 'Должность' from (
SELECT row_number() over(order by трудовая_деятельность.место_работы) as rn, трудовая_деятельность.место_работы AS 'Место работы'
FROM трудовая_деятельность			
GROUP BY трудовая_деятельность.место_работы) as t1
full join (
SELECT row_number() over(order by трудовая_деятельность.должность) as rn, трудовая_деятельность.должность AS 'Должность'
FROM трудовая_деятельность
GROUP BY трудовая_деятельность.должность) as t2
on t1.rn = t2.rn
11 мар 15, 13:38    [17369708]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
o-o
Guest
ну т.е. Betman, вы признаете, что таблица все же одна?

SHok_by,
все ок, только нехорошо закавычивать, когда требуется заквадрачивать,
показать, как сервер на это реагирует?
справа результат в кириллической базе, слева в базе с лат. коллэйшеном

К сообщению приложен файл. Размер - 111Kb
11 мар 15, 13:49    [17369834]     Ответить | Цитировать Сообщить модератору
 Re: Объединение столбцов (не в один столбец!) двух таблиц в единую таблицу.  [new]
SHok_by
Member

Откуда: Minsk
Сообщений: 51
o-o,
)) моя вина.
11 мар 15, 13:52    [17369859]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить