列「AVAILABILITY」を追加すると、クエリは同じ機器の ONRENT と CLOSED の最終日を返し続けます。各機器の最後のエントリのみが必要です。
これが私のクエリです:
select max([No_]), [Start Date], [Availability Status]
from [Rental Line]
group by [No_], [Start Date], [Availability Status]
列「AVAILABILITY」を追加すると、クエリは同じ機器の ONRENT と CLOSED の最終日を返し続けます。各機器の最後のエントリのみが必要です。
これが私のクエリです:
select max([No_]), [Start Date], [Availability Status]
from [Rental Line]
group by [No_], [Start Date], [Availability Status]
私があなたの質問を正しく理解していれば、No_ で定義された各機器の最後の可用性ステータスのみが必要です。ここで、「最後」は最新の開始日によって定義されます。もしそうなら、これはうまくいくはずです:
これを試して:
select RL.[No_], RL.[Start Date], RL.[Availability Status]
from [Rental Line] RL
join
(
select
No_,
MAX([Start Date]) AS [LastStartDate]
from [Rental Line] RL1
group by No_
) X on RL.No_ = X.No_ AND RL.[Start Date] = X.[LastStartDate]
select max([No_]), [Start Date], [Availability Status]
from [Rental Line]
group by [No_], [Start Date], [Availability Status]
order by [AVAILABILITY] DESC