Sử dụng SET @ten_bien = (SELECT ...) với truy vấn con trả về 1 giá trị (skalar).
Ví dụ: Tính tổng giá và lưu vào biến.
CREATE TABLE QueryResultDemo (Price INT); INSERT INTO QueryResultDemo VALUES (100), (20), (200), (80);
Gán tổng vào biến @TotalPrice:
SET @TotalPrice = (SELECT SUM(Price) FROM QueryResultDemo);
Kiểm tra giá trị biến:
SELECT @TotalPrice;
Kết quả
+-------------+ | @TotalPrice | +-------------+ | 400 | +-------------+
Ứng dụng:
- Tái sử dụng giá trị tính toán trong nhiều truy vấn tiếp theo.
- Truyền tham số cho stored procedure động.
- Debug:
SELECT @bien;xem giá trị trung gian.
Lưu ý: Biến user (@ten) khác biến local trong stored procedure (DECLARE ten ...). Biến user tồn tại suốt session.