首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >仅返回历史表中的最大EventDate

仅返回历史表中的最大EventDate
EN

Stack Overflow用户
提问于 2017-07-28 03:54:06
回答 1查看 126关注 0票数 0

我有一个表格,里面有关于车辆和在这些车辆上发生的事件的信息。例如:

VehicleEvent

代码语言:javascript
运行
复制
VehicleRefNum | EventTypeCode    | EventDate
      1       | OutOfService     | 2017-06-28
      2       | EngineRepair     | 2016-05-15                         
      3       | OutOfService     | 2016-04-02                         
      4       | OtherRepair      | 2017-07-21                        
      1       | ReturnToService  | 2017-07-01                             
      5       | NewToService     | 2017-07-27 
      6       | OutOfService     | 2017-05-15                            
      3       | ReturnToService  | 2016-04-21 
      1       | OutOfService     | 2017-07-09                                      
      1       | ReturnToService  | 2017-07-11                                       

我希望返回每个车辆的最新ReturnToService的列表,如果车辆有一个,否则我想忽略它。

Ex结果:

代码语言:javascript
运行
复制
VehicleRefNum | EventTypeCode    | EventDate                      
      3       | ReturnToService  | 2016-04-21                              
      1       | ReturnToService  | 2017-07-11                

看起来我需要一个子查询作为WHERE子句,但我真正需要的是一些帮助。谢谢!

编辑后添加:

代码语言:javascript
运行
复制
Select VehicleRefNum, EventTypeCode, EventDate
From VehicleEvent
where VehicleRefNum = 1
and EventDate = Select max(EventDate) from VehicleEvent)

将工作,但只给我一半的解决方案,我正在寻找。我需要一个查询,将扩大与更多的车辆和事件。

EN

回答 1

Stack Overflow用户

发布于 2017-07-28 04:04:03

试试这个:

代码语言:javascript
运行
复制
SELECT VehicleRefNum, EventTypeCode, MAX(EventDate) EventDate
FROM VehicleEvent
WHERE EventTypeCode = 'ReturnToService'
GROUP BY VehicleRefNum, EventTypeCode

WHERE会将结果限制为您感兴趣的EventTypeCode。然后,您希望将结果汇总到常见的VehicleRefNum / EventTypeCode组合上,就像使用GROUP BY所做的那样,并且只看到每个组合的MAX(EventDate)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45359898

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档