объединить два столбца в один столбец и получить уникальный - PullRequest
3 голосов
/ 18 января 2012

У меня есть две колонки в таблице.Мне нужно объединить эти два столбца в один столбец, убедившись, что все значения в результирующем столбце являются уникальными (без повторения идентификаторов), например:

ChildCard    PrimaryCard
123456          123456
123450          123456
123446          123446
123456          123446
156456          155456
157456          155456
121290          124290
234567          204567

Результат

CardID
123456
123450
123446
123456
156456
157456
121290
234567
124290
204567

Любая помощь будет здесь полезна.

Спасибо.

Ответы [ 5 ]

4 голосов
/ 18 января 2012
SELECT ChildCard AS CardID FROM tbl UNION SELECT PrimaryCard FROM tbl

Это должно дать вам список различных карточных записей, как дочерних, так и основных.

2 голосов
/ 18 января 2012

Вы можете использовать команду SQL UNION для создания представления на основе двух наборов данных.

UNION удаляет повторяющиеся записи во время слияния. UNION ALL содержит дубликаты записей.

Подробнее см. Здесь http://msdn.microsoft.com/en-us/library/ms180026.aspx

1 голос
/ 18 января 2012

Вы можете выбрать различные идентификаторы, как это:

SELECT ChildCard AS ResultID FROM Table1
UNION
SELECT PrimaryCard AS ResultID FROM Table1
1 голос
/ 18 января 2012
SELECT ChildCard CardID
FROM tbl 
UNION 
SELECT PrimaryCard 
FROM tbl
0 голосов
/ 18 января 2012

Самым безопасным вариантом является использование идентификатора, который является просто объединением обоих идентификаторов.

Запрос для создания всех новых идентификаторов будет выглядеть следующим образом:

select PrimaryCard + '_' + ChildCard as CardId
  from your_table;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...