在给定日期表加入之前的MySQL日期处理

时间:2017-11-13 19:43:12

标签: mysql

我有两张桌子。

一个包含给定报告日期的信息,另一个包含有关事件日期的信息。

我正在尝试在特定事件发生之前生成最新信息列表(例如,如果事件发生在2015年12月15日,我有2014年12月15日,2015年12月1日和1日的报告/ 12/2016,我想从该数据集中提取2015年12月1日的信息。如果在第二行有另一个事件发生在2016年1月13日,我有与上面相同的数据我只想要返回2016年1月12日的信息)。

日期与ID不同。

表格采用以下格式

ID -     DateV-                            ValueX
JAS    2017-12-15 00:00:00         3.45

我尝试过运行类似下面的查询,但它只返回第一个项目ID-DateCombination而不是所有项目的列表。事件ID的最新报告日期我甚至可以。这足以让我获得我需要的价值。

Reporting Table - TableRep
Incident Table - TableInc

SELECT TableRep.ID, TableRep.DateV, TableRep.ValueX 
FROM TableRep 
INNER JOIN Table 
ON TableInc.DateP > (
SELECT Max(TableRep.DateV) FROM TableRep;);

我已经将它缩小到表格中给定日期之前的记录,但我很难丢失除最新日期之外的日期。

基本上,我想从TableInc中提取id和Date以及TableInc中TableInc中指示的日期之前的第一个日期,用于TableInc中的每个记录。有些ID有多个条目,所以我不能只提取它们并为每个ID选择最大值,这只占人口的50%。

0 个答案:

没有答案