我似乎無法找出如何通過以下表達式/子查詢返回的值加載到一個變量:噸SQL - 子查詢成可變
declare @var int
set @var = null
IF @var IS NULL
SELECT @var = t.col_one
FROM my_table t
WHERE t_datetime = (SELECT MAX(t_datetime) FROM t WHERE t.col_two = 1)
我怎樣才能加載表達式的結果進變量?
我已更新代碼以反映下面的答案,但問題仍然存在。有沒有錯誤,但後來在我的sproc時,我打電話@var
該變量仍然爲空。這意味着這仍然不起作用。在後面的代碼我使用:
t.col_three = @var
我不使用t.col_three = @var or @var is null
,因爲變量不能爲null進一步:
您是否收到錯誤?如果是這樣?只要子查詢返回一行並且該變量是兼容的數據類型,就應該工作。 –
沒有錯誤。 @var只是不加載/填充結果。 –
查詢是否返回任何值? –