我现在有这个问题
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
。我希望此查询返回所有多维数据集以及上次运行最新作业的时间。这很管用。现在我还想添加该作业的STATUS
,但是我似乎无法使查询正常工作。上面的查询可以工作,但不会返回与之相关联的状态,这正是我想要的。是否有方法更改上述查询以同时返回包含STATUS
的作业的MAX(LAST_END_RUN_DATE)
? 最佳答案
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
关于mysql - 从最大选择属性中交叉应用SQL,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41491125/