说我有300个位置信息提供者,其中一些在多个位置工作。每个地点都有一个帐单邮寄地址,但我只想返回提供商首先打开的地点的帐单邮寄地址(该营业日),这是我所要求的,但是我想我应该问的是如何获得返回每个提供商的最早开放时间
答案 0 :(得分:0)
您可以使用row_number并选择以下1
Select * from ( Select L.Open_dt, bill.*, RowN = Row_number() over(partition by Address_type, Street1, City, State order by L.Open_DT desc) from tbl_Location L left join ... ) a where a.RowN = 1
答案 1 :(得分:0)
窗口功能是您的朋友。尝试这样的事情:
SELECT * FROM
(
SELECT DISTINCT
L.Open_DT
, bil.*
,ROW_NUMBER() OVER (ORDER BY L.Open_DT) AS Rnk
FROM tbl_Location L
LEFT OUTER JOIN [MOAD].[dbo].[qry_Location_Address_Billing] bil
ON L.Location_ID = bil.LocationID
WHERE L.Group_NPI = '*******'
) AS R
WHERE Rnk = 1