将两个顺序 SQL 查询合并为单个 SQL 查询以获取 max 和 join

Merge two sequential SQL query into a single SQL query for max and join

我有两个 SQL 顺序执行的查询。

  1. select max(last_updated_date) as recent_date
        from TRANSACTION where quality='P' and TYPE='Car'
    
  2. select * from CAR 
    JOIN
    (
    select TRAN_ID,LAST_UPDATED_DATE from TRANSACTION 
    ) on TRANSACTION.TRAN_ID=CAR.ID and TRANSACTION.LAST_UPDATED_DATE=recent_date
    

我想通过单个查询获得相同的结果。 我什么都想不出来。

使用可以使用标量子查询

select * 
from CAR 
JOIN
(
   select TRAN_ID,LAST_UPDATED_DATE 
   from TRANSACTION 
) t on t.TRAN_ID=CAR.ID and t.LAST_UPDATED_DATE=(select max(last_updated_date)
                               from TRANSACTION 
                               where quality='P' and TYPE='Car')