Câu hỏi của tôi là tôi có thể thực hiện các chức năng của hai lựa chọn này trong một câu lệnh đơn và loại bỏ IF không?TSQL: Cách sử dụng biến có thể là null hoặc int trong một lựa chọn duy nhất
DECLARE @recID INT;
--Case 1
SET @recID = null;
--Case 2
--SET @recID = 117;
IF @recID is null
BEGIN
select * from myTable WHERE [myIDcolumn] is null -- works when recID is null
END
ELSE
BEGIN
select * from myTable WHERE [myIDcolumn] = @recID -- works when recID is number
END
Đừng quên bọc tất cả mọi thứ trong dấu ngoặc đơn nếu bạn đang chuỗi AND vào WHERE của bạn. '(...) WHERE myIDcolumn2 = TRUE AND ([myIDcolumn] = @recID hoặc (@recID là null và [myIDcolumn] là null))' – Ullullu