我想加入包含 WITH 子句的子查询/派生表(必须使用 WITH 子句进行过滤ROW_NUMBER() = 1
)。在 Teradata 中,类似的东西可以正常工作,但 Teradata 使用QUALIFY ROW_NUMBER() = 1
而不是 WITH 子句。
这是我在此加入的尝试:
-- want to join row with max StartDate on JobModelID
INNER JOIN (
WITH AllRuns AS (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY JobModelID ORDER BY StartDate DESC) AS RowNumber
FROM Runs
)
SELECT * FROM AllRuns WHERE RowNumber = 1
) Runs
ON JobModels.JobModelID = Runs.JobModelID
我究竟做错了什么?