Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tsql SQL选择另一个具有最新日期的表_Tsql_Join_Sql Server 2008 R2 - Fatal编程技术网

Tsql SQL选择另一个具有最新日期的表

Tsql SQL选择另一个具有最新日期的表,tsql,join,sql-server-2008-r2,Tsql,Join,Sql Server 2008 R2,我需要查询表1中的事项数据列表,以及表2中与原始事项相关的最新发票号。我很难将这些表合并在一起,而且每件事只能得到一个结果,因为我只想要最新的发票 我们将非常感谢您的任何帮助 表1 表2 结果 以下内容按日期顺序为每个发票行指定编号,并仅选择最近的编号。请注意,这假设InvoiceDate存储为日期、日期时间或按时间顺序排序的其他内容,并且在同一日期有两张发票的情况下,可以返回其中一张。如果您需要在打成平局的情况下返回两张发票,请将行号替换为秩 您可以发布您尝试过的sql吗? Select *

我需要查询表1中的事项数据列表,以及表2中与原始事项相关的最新发票号。我很难将这些表合并在一起,而且每件事只能得到一个结果,因为我只想要最新的发票

我们将非常感谢您的任何帮助

表1

表2

结果


以下内容按日期顺序为每个发票行指定编号,并仅选择最近的编号。请注意,这假设InvoiceDate存储为日期、日期时间或按时间顺序排序的其他内容,并且在同一日期有两张发票的情况下,可以返回其中一张。如果您需要在打成平局的情况下返回两张发票,请将行号替换为秩


您可以发布您尝试过的sql吗?
Select * from Table1 a
inner join 
    (Select *
    , row_number() over (partition by MatterID order by InvoiceDate desc) as RN
     from Table2) b
on a.MatterID = b.MatterID and b.RN = 1