Cú pháp
SET @var = (SELECT ...);
Yêu cầu: Subquery phải trả về **duy nhất 1 giá trị** (1 hàng, 1 cột).
Ví dụ
Bảng 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 | +----+---------------+--------------+
Gán giá trị lớn nhất (làm tròn 2 chữ số) vào @Val_Max:
mysql> SET @Val_Max = (SELECT ROUND(MAX(tender_value),2) FROM tender); mysql> SELECT @Val_Max; +----------+ | @Val_Max | +----------+ | 265.59 | +----------+