rgb*_*rgb 8 sql t-sql sql-server-2008
我如何改进以下代码只使用'select'一次?
IF EXISTS (SELECT [NUMBER] FROM [TABLE] WHERE [ID_RECORD] = @id_record
BEGIN
DECLARE @tmp_variable
SELECT @tmp_variable = [NUMBER] FROM [TABLE] WHERE [ID_RECORD] = @id_record
SET @other_variable = @tmp_variable
END
ELSE
BEGIN
SET @other_variable = 0
END
Run Code Online (Sandbox Code Playgroud)
小智 18
试试这个 :
DECLARE @tmp_variable INT
SET @tmp_variable = ISNULL(( SELECT [NUMBER]
FROM [TABLE]
WHERE [ID_RECORD] = @id_record
), 0)
Run Code Online (Sandbox Code Playgroud)
尝试此解决方案:
DECLARE @tmp_variable int
SET @tmp_variable = null
SELECT @tmp_variable = [NUMBER] FROM [TABLE] WHERE [ID_RECORD] = @id_record
IF @tmp_variable is not null
BEGIN
SET @other_variable = @tmp_variable
END
ELSE
BEGIN
SET @other_variable = 0
END
Run Code Online (Sandbox Code Playgroud)