programing

하나의 SELECT 문에 두 개의 스칼라 변수를 설정하시겠습니까?

powerit 2023. 9. 15. 21:25
반응형

하나의 SELECT 문에 두 개의 스칼라 변수를 설정하시겠습니까?

나는 이것을 하고 싶습니다.

Declare @a int;
Declare @b int;

SET @a,@b = (SELECT StartNum,EndNum FROM Users Where UserId = '1223')

PRINT @a
PRINT @b

그러나 잘못된 구문입니다.하나의 선택문에 여러 스칼라 변수를 설정하려면 어떻게 해야 합니까?할 수 있습니다.

Declare @a int;
Declare @b int;

SET @a = (SELECT StartNum FROM Users Where UserId = '1223')
SET @b = (SELECT EndNum FROM Users Where UserId = '1223')

PRINT @a
PRINT @b

하지만 이것은 두 배의 시간이 걸릴 것입니다.가장 빠른 방법은 무엇입니까?

DECLARE @a int;
DECLARE @b int;

SELECT @a = StartNum, @b = EndNum 
FROM Users 
WHERE UserId = '1223'

이렇게 합니다.

Declare @a int;
Declare @b int;

SELECT @a=StartNum,@b=EndNum FROM Users Where UserId = '1223'

PRINT @a
PRINT @b

저장 프로시저에서 이 작업을 수행하고 출력 결과 세트에서 선택한 결과를 원하지 않는 경우 INTO라는 단어를 사용해야 합니다.

Declare @a int;
Declare @b int;

SELECT StartNum, EndNum 
FROM Users 
Where UserId = '1223'
INTO @a, @b;

다음과 같이 사용할 수도 있습니다.

SELECT StartNum, EndNum 
INTO @a, @b
FROM Users 
Where UserId = '1223';

언급URL : https://stackoverflow.com/questions/9127775/setting-two-scalar-variables-in-one-select-statement

반응형