2013-05-07 3 views
1

select 쿼리에서 선언 된 변수에 값을 저장하고 싶습니다. 그러나 여기에서 내 select 쿼리는 여러 행을 반환합니다. 아래 예 참조select 쿼리의 값을 변수에 저장합니다.

select Col1 
from Table1 where Col1 NOT IN (select Col1 from Table2) 
and Col3 >=8 


------------------ 
result 
73 
74 

declare @temp1 int 
declare @temp2 int 

I essentially want @temp1 to hold 73 and @temp2 hold 74 and so fort... 

달성 방법에 대한 아이디어는 큰 도움이 될 것입니다. 더 자세한 설명이 필요하면 알려주십시오. 사전에

감사합니다, 가갠

+1

다른 사람들은 다양한 아이디어 (테이블 변수, 임시 테이블)를 제안했지만, 당신이하려는 일이나 나중에 변수를 어떻게 사용할 것인지 명확하지 않습니다. 사용 방법을 보여줄 수 있다면 누군가가 좋은 해결책을 제안 할 수 있습니다. – Pondlife

답변

1

나는 당신이 cursors 찾고있는 생각합니다.

Here은 좋은 링크 explians입니다.

1

나는 여러 값을 저장하기 위해 테이블 ​​변수 (또는 임시 테이블)를 사용해야한다고 말합니다.

declare @tab table 
    (
     col1 int 
    ); 

with myTab as 
(
    Select 1 col 
    Union All 
    Select 2 
    Union All 
    Select 3 
) 
Insert Into @tab 
    Select Col 
    From MyTab 

Select * From @tab 
관련 문제