我要创建的报告显示了在指定日期范围内发送特定类型的信件('212')的案例列表。试图从另一个表中提取最新日期
目前,我有几个联接回事衬托出我的其他列,但我有与问题的区域是,当我尝试加入“文档”表与“案例”表。在我加入加入每种情况下是唯一的,但只要我参加“文档”表有因为“文档”表有每个正在创建这封信的许多实例中的相同情况下的多个实例案件。我只需要提供该信的最新创建日期。
选择
[casCaseID] as [Case ID],
[cliForename] + [clisurname] as [Client Name],
[rusFullname] as [Adviser Name],
[docDateCreated] as [Date EA Letter Sent],
[camloan],
CASE
WHEN isnull(camLoan,0) = 0 or isnull(campurchaseprice,0) = 0 THEN 0
ELSE [camLoan]/[campurchaseprice]
END as 'Loan To Value %'
FROM [MPS3].[dbo].[Cases]
inner join [MPS3].[dbo].[Clients] on casPrimaryClientID=cliClientID
inner join [MPS3].[dbo].[RefUsers] on casAdviserID=rusUserID
inner join [MPS3].[dbo].[RefSources] on casSourceID=rsoSourceID
inner join [MPS3].[dbo].[CasesMortgage] on casCaseID=camCaseID
inner join [MPS3].[dbo].[Documents] on casCaseID=docCaseID and docLetterID =212
where docDateCreated between @fromDate and @toDate
我使用子查询试图在内部与 'MAX',但无济于事加入。
inner join [MPS3].[dbo].[Documents]
on casCaseID=docCaseID
and docLetterID =212
and docdatecreated = (select max(docdatecreated)
from [MPS3].[dbo].[Documents]
where casCaseID=docCaseID
group by cascaseid)
任何想法,我哪里出错了?
谢谢!
谢谢安德鲁,那工作完美。我要检查一下,看看有什么改变。 再次感谢! – TJH 2012-02-13 16:38:51
我应该解释。我添加了一个GROUP BY子句。它看起来坏坏地包括在两块地的大CASE语句,但它被缓存,所以没有那么糟糕。 – Andrew 2012-02-13 17:01:15
不用担心,这是非常好的东西。我无法相信我还没有尝试过。我已经将它保存以备将来使用! 所有最优秀的 添 – TJH 2012-02-13 17:10:58