Как вставить строку для каждого уникального значения в столбце - PullRequest
0 голосов
/ 11 февраля 2012

Как я мог в SQL Server 2008 написать оператор SQL, который бы вставлял одну строку для каждого отдельного значения, которое он находит в одном столбце в той же таблице?

Редактировать:
Таблица, которую я хочудобавить строки в ту же таблицу, которую я проверяю.

У меня есть нормализованная таблица со столбцом [Имя] и [Хобби], как мне вставить одно новое хобби для каждого имени?

Вклад очень важен =]

Ответы [ 2 ]

1 голос
/ 11 февраля 2012

1001 * попробовать *

INSERT INTO TargetTable (SomeColumn)
SELECT DISTINCT TheSourceColumn From SomeSourceTable;

Если это не то, что вы ищете, предоставьте более подробную информацию, например, как выглядит модель данных и т. Д.

ОБНОВЛЕНИЕ - после редактирования из OP:

Я не уверен, что ваша модель данных хороша, но вы можете сделать это:

INSERT INTO TheTable (NAME, HOBBY)
SELECT DISTINCT X.NAME, @SomeHOBBY FROM TheTable X;
0 голосов
/ 11 февраля 2012

Вы можете использовать что-то вроде

Insert into table1
Select distinct col1 from tabl2

Вышеуказанное должно работать до тех пор, пока в table1 есть только один столбец с тем же типом данных, что и col1 таблицы tabl2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...