웹개발/SQL(mySQL)

MySQL에서 변수 사용하기

bergerac 2025. 6. 20. 09:11

1. 변수란?

SQL에서 변수는 데이터를 임시로 저장할 수 있는 저장 공간입니다.
프로그래밍 언어의 변수와는 달리 SQL은 비절차적 언어이기 때문에, 변수는 주로 간단한 데이터 연산, 조건 비교, 동적 쿼리 작성에 사용됩니다.

 

2. 변수 선언과 출력

-- 변수 선언 (우항의 데이터를 좌항의 변수에 저장)
SET @myVar1 = 5;
SET @myVar2 = 3.14;

-- 변수 출력
SELECT @myVar1;
SELECT @myVar2;

 

  • @변수명 형식으로 선언
  • 워크벤치 실행 도중에는 유지되지만 워크벤치를 종료하면 사라짐

3. 변수 실전 예제

SET @txt = '가수 이름: ';
SET @height = 166;

SELECT 
    @txt, mem_name
FROM 
    `member`
WHERE 
    height > @height;

 

  • height가 166 이상인 멤버의 이름을 출력
  • 텍스트(@txt)도 함께 출력

4. ❌ Limit 키워드에는 변수 직접 사용 불가

SET @count = 3;

-- 아래 코드는 동작하지 않음
-- SELECT * FROM `member` LIMIT @count;

 

 

✅ 해결 방법 → Prepare + Execute

 

5. 동적 쿼리 실행: PREPARE, EXECUTE

-- 1. 쿼리 준비
PREPARE mySQL
FROM 'SELECT * FROM `member` ORDER BY height LIMIT ?';

-- 2. 실행할 값 설정
SET @count = 3;

-- 3. 준비된 쿼리 실행
EXECUTE mySQL USING @count;
키워드 설명
PREPARE SQL 문을 미리 준비. 실행은 안 됨
? 나중에 채워질 자리 (플레이스홀더)
EXECUTE 준비된 SQL 실행
USING 플레이스홀더에 값 지정

 

'웹개발 > SQL(mySQL)' 카테고리의 다른 글

MySQL - 스토어드 프로시저  (0) 2025.06.22
MySQL 형변환  (0) 2025.06.21
MySQL - JOIN 이해하기  (0) 2025.06.19
MySQL SubQuery 활용  (1) 2025.06.18
MySQL SELECT 문 사용방법  (0) 2025.06.17