2 つのテーブルがあります。1 つは初期評価用、もう 1 つは再評価用です。形式は次のとおりです。
initialAssessment
:
assessmentId
personId
assessmentDate
totalScore
Reassessments
:
assessmentId
personId
assessmentDate
totalScore
各テーブルには、1 人あたり 1 つのレコードが含まれます。最新の評価が再評価表に含まれていない可能性があります。そのため、2 つのテーブルから最新の評価を選択し、特定の人の対応する合計スコアを選択する必要があります。次のクエリを試しましたが、複数の行が取得されます。
SELECT personId, MAX(assessmentDate) AS maxSubmittedDt, TotalScore
FROM (
SELECT personId, assessmentDate, TotalScore
FROM initialAssessment
WHERE personId = 1
UNION
SELECT personId, assessmentDate, TotalScore
FROM Reassessments
WHERE personId = 1) AS u
Group BY personId, TotalScore
Order By personId
私の質問は、最初の評価表と再評価表の間で最新の評価とそれに対応するスコアを選択するにはどうすればよいですか? 問題があれば、SQL サーバー 2005 を使用しています。