쿼리 결과를 MySQL 변수에 저장하려면 SET 명령을 사용합니다. 구문은 다음과 같습니다 -
SET @anyVariableName = ( yourQuery);
위의 개념을 이해하기 위해 테이블을 만들어 보겠습니다. 다음은 테이블을 생성하는 쿼리입니다 -
mysql> create table QueryResultDemo −> ( −> Price int −> ); Query OK, 0 rows affected (0.59 sec)
이제 테이블에 일부 레코드를 삽입해 보겠습니다. 다음은 레코드를 삽입하는 쿼리입니다 -
mysql> insert into QueryResultDemo values(100); Query OK, 1 row affected (0.17 sec) mysql> insert into QueryResultDemo values(20); Query OK, 1 row affected (0.13 sec) mysql> insert into QueryResultDemo values(200); Query OK, 1 row affected (0.10 sec) mysql> insert into QueryResultDemo values(80); Query OK, 1 row affected (0.15 sec)
select 문을 사용하여 테이블의 모든 레코드를 표시합니다. 모든 레코드를 표시하는 쿼리는 다음과 같습니다. -
mysql> select *from QueryResultDemo;
다음은 출력입니다 -
+-------+ | Price | +-------+ | 100 | | 20 | | 200 | | 80 | +-------+ 4 rows in set (0.00 sec)
이제 SET 명령을 사용하여 쿼리 결과를 변수에 설정할 수 있습니다. 쿼리는 다음과 같습니다.
mysql> Set @TotalPrice = (select sum(Price) from QueryResultDemo); Query OK, 0 rows affected (0.00 sec)
SELECT 문을 사용하여 "TotalPrice" 변수에 저장된 값을 확인하십시오 -
mysql> select @TotalPrice;
다음은 출력입니다 -
+-------------+ | @TotalPrice | +-------------+ | 400 | +-------------+ 1 row in set (0.00 sec)