查找为 EC1 区域中的每个帐户创建的第三大报价

Find third largest quote ever created for each of the accounts in the EC1 area

任何人都可以帮助我 SQL 新手并试图找出下面的问题,请参阅 table 结构的图片;

问题 = Select EC1 区域中每个账户有史以来第三大报价的账户名称、联系人姓氏、案例编号、报价编号、报价日期和报价价值

到目前为止我得到了;

Select 
    a.accountname, cc.lastname, c.casenumber, 
    q.quotenumber, q.quotedate, q.quotevalue 
from 
    TBL_Quote q 
Left join 
    TBL_case c On q.caseid = c.caseid 
Left join 
    tbl_contact cc On c.contactID = cc. contactID 
Left join    
    tbl_account a On a.accountid = cc.accountid 
Where 
    left(a.postcode, 3) like 'EC1' 

第三个:

SELECT TOP 1 value 
FROM 
    (SELECT DISTINCT TOP 3 value 
     FROM tbl_quote 
     ORDER BY value DESC) a 
ORDER BY value 

我似乎无法合并前 3 个,查询是否最好按 overpartition ?

我会建议连接和行限制子句:

select ac.accountName, co.lastName, ca.caseNumber, qu.quoteNumber
from tbl_account       ac
inner join tbl_contact co on co.accountId = ac.accountId
inner join tbl_case    ca on ca.contactId = co.contactId
inner join tbl_quote   qu on qu.caseId    = ca.quoteId
where ac.postcode like 'EC1%'
order by len(qu.value) desc
offset 2 rows fetch next 1 row only