sql - 如何在 Maximo CMMS SQL where 子句中获取最新日期?
问题描述
大家好,我正在尝试获取查询中的最后一个 wostatus.changedate,并且我有以下 Maximo (CMMS) 代码:
workorder.istask = 0 and (workorder.worktype = 'CM' or workorder.worktype = 'CP' or workorder.worktype = 'PM') and (workorder.woclass = 'WORKORDER' or workorder.woclass = 'ACTIVITY')
and (workorder.schedfinish >= dateadd(week, datediff(week, 0, getdate())+0, 0)
and workorder.schedfinish <= dateadd(week, datediff(week, 0, getdate())+1, 0)
and workorder.schedstart >= dateadd(week, datediff(week, 0, getdate())+0, 0)
and workorder.schedstart <= dateadd(week, datediff(week, 0, getdate())+1, 0))
and workorder.historyflag = 0 and workorder.siteid = 'CORE' and workorder.status != 'WPLAN' and workorder.wonum in
(select wostatus.wonum from wostatus where (wostatus.status = 'APPR') and wostatus.changeby in ('x', 'xx', 'xxx', 'xxxx' ) and wostatus.changedate >= dateadd(week, datediff(week, 7, getdate()), 2) and wostatus.changedate < dateadd(week, datediff(week, 0, getdate()), 3))
下面是我需要过滤最新日期的代码部分,尽管我没有成功提供最新日期,但我需要的是这样的:
(select wostatus.wonum from wostatus where (wostatus.status = 'APPR') and wostatus.changeby in ('x', 'xx', 'xxx', 'xxxx' ) and wostatus.changedate >= dateadd(week, datediff(week, 7, getdate()), 2) and wostatus.changedate = MOST RECENT DATE)
整个查询正在查看特定工作类型中的工作订单并计划在本周内,其中他们的状态最后一次由特定人员更改为 APPR,并且此更改发生在特定时间。我想看到这些人在 wostatus.changeby 中的最后一个 wostatus.status = 'APP' 更改。
目前我的查询只查看特定时间的批准日期,我希望它是最近批准的日期。
我试图在我的查询中加入 Max(wostatus.changedate) 但是我没有成功。
这可能吗?
谢谢你。
解决方案
我不确定您到底需要什么,但请为您的最后一段尝试这个(加上所有更改日期和日期过滤器)
select wonum from maximo.wostatus where status = 'APPR' and CHANGEDATE in
(select max(CHANGEDATE) from maximo.wostatus where status = 'APPR'
group by wonum)
这将为您提供最近批准的工单的过滤器。如果您更需要某些用户的最新版本 - 试试这个
select wonum from maximo.wostatus where status = 'APPR' and CHANGEDATE in
(select max(CHANGEDATE) from maximo.wostatus where status = 'APPR'
group by changeby)
推荐阅读
- swift - Alamofire publishDecodable 不会向服务器发送请求,但 responseDecodable 会
- java - Java Hadoop 不完整的 HDFS URI,没有主机
- selenium-webdriver - 从 JMeter Log Viewer 捕获特定的 INFO 级别数据并显示在 JMeter Listener 或 CSV 或 HTML 报告中
- r - 如何在 R 中形成基于 LP 的聚类问题?
- python - 如何在 python 中使用相同的实时摄像头同时读取 QR 码和条形码?
- mysql - Mysql查询确定类型如果按值分组大于1则认为是类型2否则为1
- c# - 为什么同一功能中图表显示速度不同?
- spring - 如何在 Spring Boot Scheduler 项目中使用 QuartzDesk?
- flutter - 如何使一个块中的对象可用于 Flutter 中的所有其他块
- python-3.x - 如何使用 Rrule 或 python 中的任何其他 API 获取每周日期,它返回每个月开始、月中和月末的列表,而与输入日期无关