Select 属性 从最大值交叉应用 SQL
Select property from max in cross apply SQL
我目前有这个查询
SELECT
OC.*,
NEW.LAST_JOB_RUN_DATE
FROM dbo.CUBES OC
CROSS APPLY (SELECT
MAX(LAST_END_RUN_DATE) AS LAST_JOB_RUN_DATE
FROM dbo.JOBS OJ
WHERE OJ.CUBE_ID = OC.ID) NEW
每个 CUBE
可以有多个 JOBS
。我希望此查询 return 我所有的多维数据集,以及最新作业的最后时间 运行。这很好用。现在我也想添加该作业的 STATUS
,但我似乎无法使查询正常工作。上面的查询有效,但 return 我没有得到与之关联的状态,这正是我想要的。
有没有办法将上述查询也更改为 return 包含 MAX(LAST_END_RUN_DATE)
的作业的 STATUS
?
SELECT
OC.*,
NEW.LAST_JOB_RUN_DATE,
NEW.STATUS
FROM dbo.CUBES OC
OUTER APPLY (SELECT TOP (1) OJ.LAST_END_RUN_DATE AS LAST_JOB_RUN_DATE, OJ.STATUS
FROM dbo.JOBS OJ
WHERE OJ.CUBE_ID = OC.ID
ORDER BY OJ.LAST_END_RUN_DATE DESC ) NEW
我目前有这个查询
SELECT
OC.*,
NEW.LAST_JOB_RUN_DATE
FROM dbo.CUBES OC
CROSS APPLY (SELECT
MAX(LAST_END_RUN_DATE) AS LAST_JOB_RUN_DATE
FROM dbo.JOBS OJ
WHERE OJ.CUBE_ID = OC.ID) NEW
每个 CUBE
可以有多个 JOBS
。我希望此查询 return 我所有的多维数据集,以及最新作业的最后时间 运行。这很好用。现在我也想添加该作业的 STATUS
,但我似乎无法使查询正常工作。上面的查询有效,但 return 我没有得到与之关联的状态,这正是我想要的。
有没有办法将上述查询也更改为 return 包含 MAX(LAST_END_RUN_DATE)
的作业的 STATUS
?
SELECT
OC.*,
NEW.LAST_JOB_RUN_DATE,
NEW.STATUS
FROM dbo.CUBES OC
OUTER APPLY (SELECT TOP (1) OJ.LAST_END_RUN_DATE AS LAST_JOB_RUN_DATE, OJ.STATUS
FROM dbo.JOBS OJ
WHERE OJ.CUBE_ID = OC.ID
ORDER BY OJ.LAST_END_RUN_DATE DESC ) NEW