본문 바로가기
서버구축 (WEB,DB)

사용자 정의 변수 사용하기(Using User-Defined Variables)

by 날으는물고기 2008. 12. 29.

사용자 정의 변수 사용하기(Using User-Defined Variables)

결과값을 클라이언트에 있는 임시 변수에 저장하는 대신에 MySQL사용자 변수에 기록하도록 만드는 방법을 설명한다.

예를 들면, 최고 가격 및 최저 가격을 갖는 상품을 찾기 위해서 다음과 같이 실행할 수 있을 것이다:

mysql> SELECT @min_price:=MIN(price),@max_price:=MAX(price) FROM shop;
mysql> SELECT * FROM shop WHERE price=@min_price OR price=@max_price;
+---------+--------+-------+
| article | dealer | price |
+---------+--------+-------+
|    0003 | D      |  1.25 |
|    0004 | D      | 19.95 |
+---------+--------+-------+



table명 : test
a_seq    b_seq    c_seq
1    181    30
2    179    34
3    176    27
4    179    28
5    176    27
6    180    29
7    176    27

-------------------------------------------

select a_seq from test where b_seq='176' and c_seq='27'

를 하게 되면 결과
a_seq
3
5 ← 요기!!
7

이 출력 되는데...
여기서 a_seq 의 특정 값, 예를 들어 a_seq 가 5 일 경우 2번째 라는 것을
어떻게 query 를 해야 되는지 알수 있나요?

---------------------------------------------
해결방법 : 골뱅이(@) 변수 사용
---------------------------------------------

set @rownum=0;
select (@rownum:=@rownum+1) rownum, a_seq from test where b_seq='176' and c_seq='27';

결과

rownum a_seq
1      3
2      5
3      7


출처 : www.mysqlkorea.co.kr

728x90

댓글