MySQL에서는 @를 사용하여 세션 변수를 선언하고 사용할 수 있습니다.
세션 변수는 특정 세션 동안에만 유효하며,
하나의 쿼리나 프로시저에서 값을 저장하고, 다른 쿼리에서 사용할 수 있습니다.
이번 포스팅에서는 @의 역할과 세션 변수를 사용하는 방법에 대해 알아보겠습니다.
변수 선언 및 값 할당
변수 선언과 값 할당 방식은 매우 간단합니다.
그냥 @ 뒤에 변수명을 붙여서 값을 할당하면 됩니다.
SET @user_name = 'John Doe';
변수 사용
세션 변수를 사용하여 쿼리에서 데이터를 필터링하거나, 여러 쿼리에서 재사용할 수 있습니다.
SELECT @user_name; -- 'John Doe' 출력
SELECT *
FROM users
WHERE name = @user_name;
위 예시는 @user_name에 할당된 값을 사용하여 users 테이블에서 해당 이름의 사용자를 검색하는 쿼리입니다.
세션 변수 사용 예시
세션 변수는 반복 작업이나 누적 계산에서도 유용합니다.
SET @sum_value = 0;
SELECT (@sum_value := @sum_value + price) AS cumulative_price
FROM products;
위 예시에서는 products 테이블의 price 값을 순차적으로 누적해서 세션 변수 @sum_value에 저장하고 있습니다.
쿼리 실행 결과, cumulative_price라는 price 누적 값을 담은 새로운 필드가 생성되겠지요!
'Study > SQL' 카테고리의 다른 글
[MySQL] SUBSTR 함수에 대하여 (0) | 2024.11.05 |
---|---|
[MySQL] CASE문 (CASE WHEN THEN END) (0) | 2024.10.10 |
[MySQL] UNION과 UNION ALL의 차이 (1) | 2024.09.04 |
[MySQL] IFNULL과 NULLIF의 차이 (0) | 2024.09.02 |