다른 테이블의 SELECT
쿼리에서 얻은 특정 값을 사용하여 테이블에 레코드를 삽입하려고합니다.루프를 사용하여 테이블에 SQL Server 2008 삽입
SELECT TOP 1000 c.ContaId
FROM FastGroupe fg
INNER JOIN FastParticipant fp
ON fg.FastGroupeId = fp.FastGroupeId
INNER JOIN Participant p
ON fp.ParticipantId = p.ParticipantId
INNER JOIN Contact c
ON p.ContaId = c.ContaId
WHERE FastGroupeName like '%Group%'
나는 외래 키로 ContaId
을 사용하여 다른 테이블 Member
에 삽입 나는이 쿼리에서 얻을 ID를 사용하고 싶습니다.
WHILE
루프를 사용하고 싶지만 SELECT
쿼리에서 얻을 레코드 수를 알지 못합니다.
따라서이 문제의 해결 방법이 있습니까?
편집
이 Member
CREATE TABLE [dbo].[Request](
[MemberId] int IDENTITY(1,1) NOT NULL,
[ContaId] int NOT NULL,
[PromoId] int NOT NULL
);
PromoId
가 아닌 널 (null) 열 수있는 테이블을하지만, 내가 만들려고 해요 모든 레코드에 대해 동일한 값을 넣고 싶습니다.
Member
기록은 내가 외래 키로 ContaId를 사용하는 다른 테이블 회원에 삽입 나는이 쿼리에서 얻을 ID를 사용하려면이
MemberId = Automatic,
ContaId = // one of the query results,
PromoId = 91
와우 너무 간단하지만 테이블의'Member', I 'SELECT' 쿼리에서 오지 않는 다른 컬럼을 가지고 있습니다. 그게 문제가 될까요? – kbaccouche
@ the_ruby_racer select 문은 select 쿼리에서 오지 않은 다른 열에 대해 1000 개의 ID를 제공하므로 문제가 될 수 있습니다. 어떻게 그들을 얻을 것입니까? 당신은 어떻게 든이 선택된 문장 안에 그들을 넣어야 만합니다. 'JOIN'또는 'UNION'. 좀 더 설명해 주시겠습니까? –
나는 나의 질문을 편집했다, 당신은 내가 의미 한 것을 보았습니다. – kbaccouche