Sql 从连接中选择最新日期

Sql 从连接中选择最新日期,sql,sql-server,tsql,Sql,Sql Server,Tsql,我在加入时遇到了问题。我收到重复记录。请帮我解决这个问题 这是我的疑问: select requestinstanceid from requestidt [RIM] inner join requestcdt [RCDT] on [RIM].requestinstanceid = [RCDT].requestinstanceid left join requestcmt [RCMT] on [RCDT].requestcommentid = [RCMT].requestcom

我在加入时遇到了问题。我收到重复记录。请帮我解决这个问题

这是我的疑问:

select requestinstanceid from
 requestidt [RIM] 
 inner join requestcdt [RCDT] on [RIM].requestinstanceid = [RCDT].requestinstanceid     
 left join requestcmt [RCMT] on [RCDT].requestcommentid = [RCMT].requestcommentid   
 inner join requestddt [RDDT] on [RDDT].requestinstanceid = [RIM].requestinstanceid   
 left join requestdmt [RDMT] on [RDMT].requestdocumentid = [RDDT].requestdocumentid
我得到的结果如下:

requestinstanceid
184
184
386
389
389
397

我不应该得到重复的记录,我想从每条记录中得到最新的日期。

此代码连接到派生表的“前1”。您应该能够了解如何将其应用于连接到按日期描述排序的子查询的前1个

SELECT T2.TempEmailID, T1.EmailID
FROM tbl1 T1
LEFT JOIN (SELECT *, RANK() Over (Partition By EmailID Order By TempEmailID DESC) as TopOne FROM tbl2) T2 ON T1.EmailID = T2.EmailID AND TopOne = 1

该查询中不应该有来自的
吗?我正在加入多个表。所以显示结果需要很长时间,你能帮我吗?你需要发布一些代码和样本数据,这样我就可以把它粘贴到SSMS中,重现你的问题。如果您这样做,我将修改您的代码以返回您想要的内容。