Я пытаюсь сгенерировать запрос в SQL Server с несколькими операторами JOIN, который предоставляет последний noteid для Talent (или пользователей) в нашей базе данных, а также несколько других точек данных, таких как имя таланта, категория, статус, деление иFollowupdate в моем запросе.
До сих пор я пробовал следующий запрос, но продолжаю получать несколько записей для одних и тех же талантов.
SELECT
MAX(n.NoteID) as Note,
t.FirstName, t.LastName, s.Name AS Status,
tc.Name AS Category, d.Name, n.FollowUpDate AS FollowUpDate
FROM
Notes n
JOIN
TalentNotes tn ON n.NoteID = tn.NoteID
JOIN
Talents t ON t.TalentID = tn.TalentID
JOIN
TalentStatuses s ON s.TalentStatusID = t.TalentStatusID
JOIN
TalentCategories tc ON tc.TalentCategoryID = t.TalentCategoryID
JOIN
Divisions d ON d.DivisionID = t.DivisionID
WHERE
tc.Name = 'G1'
AND t.EmailAddress NOT LIKE '%x3%'
OR tc.Name = 'X1'
AND t.EmailAddress NOT LIKE '%x3%'
GROUP BY
t.FirstName, t.LastName, s.Name, tc.Name, d.name, n.FollowUpDate
Результаты:
В конечном итоге я хотел бы увидеть таблицу, в которой показан мой отличный талант с MAX NoteID, но в настоящее время я продолжаю получать несколько разных NoteID для одного и того же таланта.Любая помощь в достижении этого будет принята с благодарностью!