注意下面,我需要聲明一個變量,這是另一個查詢的結果。如果不這樣做,我需要隨時在需要值的地方重複此查詢。聲明投影內的變量
SQL Server正在拋出關於在SELECT
關鍵字內部不寫DECLARE
的例外。我能做什麼或者我失蹤了什麼?
SELECT A.StudentId,
(
CASE WHEN (SELECT B.OverwrittenScore
FROM dbo.OverwrittenScores AS B
WHERE B.StudentId = A.StudentId AND B.AssignmentId = @assignmentId) IS NOT NULL
THEN (SELECT B.OverwrittenScore
FROM dbo.OverwrittenScores AS B
WHERE B.StudentId = A.StudentId AND B.AssignmentId = @assignmentId)
ELSE (-- ANOTHER QUERY, BY THE MOMENT: SELECT 0
) END
) AS FinalScore
FROM dbo.Students AS A
在括號內部我需要實現一些邏輯,我的意思是也許實現另外兩個查詢。 我在想如果在這裏我可以使用BEGIN關鍵字,但它沒有成功
也許,*只是可能*,如果您與我們分享了您想在子查詢中實現的邏輯類型,您可能*得到一些更好的幫助!根據我所知道的(荒謬的,我知道的)理論,我們不是讀心者,並且需要關於你想要完成的任務的信息,以便提出有用的建議。 – ErikE
添加更多信息,閱讀對您的帖子的評論 –