Sql server 修改我的查询以使用“最新”提取数据;logcreateddate";
我正在使用Sql Server Management Studio 2012,我创建了一个Sql查询,可以在下面找到:Sql server 修改我的查询以使用“最新”提取数据;logcreateddate";,sql-server,ssms,Sql Server,Ssms,我正在使用Sql Server Management Studio 2012,我创建了一个Sql查询,可以在下面找到: SELECT workorder.wonum as "WorkOrderNo", Workorder.description as "WorkorderDescription", Workorder.status as "WOstatus", Workorder.reportdate as "WOReportedDate", workor
SELECT
workorder.wonum as "WorkOrderNo",
Workorder.description as "WorkorderDescription",
Workorder.status as "WOstatus",
Workorder.reportdate as "WOReportedDate",
workorder.plusgmatrixprior as "WOPriority",
wfassignment.startdate as "WorkflowStartDate",
wfassignment.assigncode as "AssignedToLoginID",
wfassignment.description as "AssignmentDescription",
worklog.createby as "LogEnteredby",
worklog.createdate as "LogCreatedDate",
worklog.eventcode as "EventCode",
worklog.logtype as "LogType",
worklog.delayed as "ReasonforDelay",
worklog.description as "LogDescription",
worklog.description_long as "LoglongDescription"
FROM
wfassignment,
workorder,
worklog
WHERE
wfassignment.ownertable = 'workorder'
AND wfassignment.ownerid = workorder.workorderid
AND worklog.recordkey = workorder.wonum
AND worklog.class = workorder.woclass
AND workorder.siteid = 'adrd'
AND wfassignment.assignstatus = 'active'
AND wfassignment.assigncode = 'TRW4074'
AND worklog.createby = 'TRW4074'
ORDER BY
workorder.wonum desc;
我已经运行了查询。输出表包含一些行,这些行与不同的LogCreatedDate
具有相同的WorkOrderNo
我想用最新或最大值LogCreatedDate
获取上述查询中的所有字段
注意:我已尝试使用max()
函数和分组依据
。但它并没有起作用,因为其他领域并不是独一无二的。因此,输出包含重复的WorkOrderNo
请帮助修改上述查询或向我提供获取所有最新日期字段的建议。使用
外部应用:
SELECT
wo.wonum AS "WorkOrderNo",
wo.description AS "WorkorderDescription",
wo.status AS "WOstatus",
wo.reportdate AS "WOReportedDate",
wo.plusgmatrixprior AS "WOPriority",
wa.startdate AS "WorkflowStartDate",
wa.assigncode AS "AssignedToLoginID",
wa.description AS "AssignmentDescription",
wl.createby AS "LogEnteredby",
wl.createdate AS "LogCreatedDate",
wl.eventcode AS "EventCode",
wl.logtype AS "LogType",
wl.delayed AS "ReasonforDelay",
wl.description AS "LogDescription",
wl.description_long AS "LoglongDescription"
FROM wfassignment wa
JOIN workorder wo ON wa.ownerid = wo.workorderid
OUTER APPLY(SELECT TOP 1 *
FROM worklog wl
WHERE wl.recordkey = wo.wonum AND
wl.class = wo.woclass AND
wl.createby = 'TRW4074'
ORDER BY wl.createdate DESC) wl
WHERE wa.ownertable = 'workorder' AND
wo.siteid = 'adrd' AND
wa.assignstatus = 'active' AND
wa.assigncode = 'TRW4074'