クエリの戻り値StudentIdとHaveGiftは、(studentId)が返されたときに欲しいです。tbl_Students(StuName、StuLName、...)から学生情報を見つけるために別のselectを使用します。 HaveGiftノーリターンSQL:私はあなたが正しく必要なものを理解している場合SELECT CASE
CREATE PROCEDURE SelectGiftsTest
@StudentId INT,
@DateMinCur NVARCHAR(12),
@DateMaxCur NVARCHAR(12),
@DateMinPrev NVARCHAR(12),
@DateMaxPrev NVARCHAR(12)
AS
WITH Prev AS
(
SELECT StudentId, ISNULL(SUM(Score),0) As HighScoreUser
FROM (SELECT StudentId, Score FROM tbl_ActPoint
UNION ALL
SELECT StudentId, Score FROM tbl_EvaPoint WHERE Date>[email protected] AND Date <= @DateMaxPrev AND StudentId = @StudentId
) as T
GROUP BY StudentId
),
Cur AS
(
SELECT StudentId, ISNULL(SUM(Score),0) As HighScoreUser
FROM (SELECT StudentId, Score FROM tbl_ActPoint
UNION ALL
SELECT StudentId, Score FROM tbl_EvaPoint WHERE Date>[email protected] AND Date <= @DateMaxCur AND StudentId = @StudentId
) as T
GROUP BY StudentId
)
SELECT CASE
WHEN(Prev.HighScoreUser <= Cur.HighScoreUser)
THEN 'Yes'
ELSE 'No'
END as HaveGift,Prev.StudentId
FROM Prev
INNER JOIN Cur
ON Prev.StudentId = Cur.StudentId
WHERE [email protected]
RETURN 0
あなたはYES = HaveGiftを期待しますか?正確に何が問題なのですか? – user7294900
返されたstudentIdに基づいて、tbl_studentから選択した生徒情報が必要です。 –