HÀM (FUNCTION) TRONG MICROSOFT SQL SERVER
SQL Server hỗ trợ 3 loại hàm chính:
1. Scalar Function (Hàm vô hướng)
- Trả về một giá trị duy nhất
- Thường dùng trong SELECT, WHERE, HAVING,...
Ví dụ:
CREATE FUNCTION fn_TinhTuoi (@NamSinh INT)
RETURNS INT
AS
BEGIN
RETURN YEAR(GETDATE()) - @NamSinh
END
Sử dụng:
SELECT dbo.fn_TinhTuoi(2000) AS Tuoi
2. Inline Table-Valued Function (Hàm bảng dạng inline)
- Trả về một bảng
- Không có BEGIN...END
- Hiệu năng tốt hơn multi-statement
Ví dụ:
CREATE FUNCTION fn_DanhSachSinhVien (@LopID INT)
RETURNS TABLE
AS
RETURN
(
SELECT *
FROM SinhVien
WHERE LopID = @LopID
)
Sử dụng:
SELECT * FROM fn_DanhSachSinhVien(1)
3. Multi-statement Table-Valued Function
- Trả về bảng nhưng dùng nhiều câu lệnh
- Có thể xử lý logic phức tạp
Ví dụ:
CREATE FUNCTION fn_LocSinhVien (@Diem FLOAT)
RETURNS @KetQua TABLE (
MaSV INT,
TenSV NVARCHAR(100),
Diem FLOAT
)
AS
BEGIN
INSERT INTO @KetQua
SELECT MaSV, TenSV, Diem
FROM SinhVien
WHERE Diem >= @Diem
RETURN
END
Tin tức liên quan:
- Khởi động cuộc thi Future Homes Europe 2026
- [THÔNG BÁO] – Lịch bảo vệ đồ án Capstone 1&2 và một số yêu cầu trước bảo vệ
- Giải bài toán thích ứng từ quy hoạch đến thiết kế công trình của miền Trung trước ngưỡng cực đoan khí hậu mới
- 5 phương pháp học tập hiệu quả giúp học nhanh, nhớ lâu
- Martinez của UPS Foundation thực hiện vai trò của mình một cách nghiêm túc

