여러 행을 반환하는 명령문을 사용하여 사용자 변수에 값을 할당하는 경우 사용자 변수가 저장할 수 있기 때문에 마지막 행의 값이 해당 사용자 변수에 저장됩니다. 유일한 단일 값. 우리가 테이블 'Tender'의 데이터를 사용하는 예에 따라 다음을 표시합니다 -
예시
mysql> select * from Tender; +----+---------------+--------------+ | Sr | CompanyName | Tender_value | +----+---------------+--------------+ | 1 | Abc Corp. | 250.369003 | | 2 | Khaitan Corp. | 265.588989 | | 3 | Singla group. | 220.255997 | | 4 | Hero group. | 221.253006 | | 5 | Honda group | 225.292266 | +----+---------------+--------------+ 5 rows in set (0.04 sec)
위의 결과 집합은 'Tender' 테이블의 데이터를 보여줍니다. 이제
에 값을 할당합니다.다음과 같이 @name 변수의 'companyname' 열 -
mysql> Select @name := companyname from tender; +----------------------+ | @name := companyname | +----------------------+ | Abc Corp. | | Khaitan Corp. | | Singla group. | | Hero group. | | Honda group | +----------------------+ 5 rows in set (0.00 sec)
그러나 이제 이 변수를 참조하면 마지막 행에 있던 회사 이름만 표시됩니다. 사용자 변수는 하나의 값만 저장할 수 있기 때문입니다.
mysql> Select @name; +-------------+ | @name | +-------------+ | Honda group | +-------------+ 1 row in set (0.00 sec)