Как добавить строку для всех строк в другой таблице в SQL Server - PullRequest
7 голосов
/ 08 февраля 2011

Я не лучший в языке SQL. У меня есть таблица с примерно 20 000 пользователей (строк) в ней. У меня есть другая таблица, в которую я хотел бы добавить строку для каждого пользователя, используя его имя пользователя. Это возможно с использованием только SQL?

Я мог бы просто зайти в приложение (написанное на c #) и использовать linq, чтобы вытащить всех пользователей, перебрать их и добавить строку для каждого пользователя. Мне просто любопытно, есть ли способ сделать это напрямую в SQL.

TABLE Users
Username (varchar)
etc
etc

TABLE ChatChannels
Username (varchar)
ChannelName (varchar)

Я хотел бы добавить по одной строке в ChatChannels для каждого пользователя в Users, используя имя пользователя для заполнения столбца Username в ChatChannels.

1 Ответ

11 голосов
/ 08 февраля 2011
insert into chatchannels (Username, ChannelName)
select username, 'NewChatChannel'
from users

Это вставляет одну строку на username в users, с именем канала, установленным в 'NewChatChannel'.

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