如何在db2上提取匹配日期?

时间:2015-11-16 14:22:49

标签: sql date db2

我正在尝试创建一个查询,当司机购买汽油时会出现这个问题,以及他购买汽油时的里程表。 目前我正在使用两个表格ODOHISFS_POS 在表格FS_POS中,我将使用POS_DATEVOL_PFUEL列,ODOHIST我将使用READINGDATEODOMETER

那么我的问题是我怎样才能在驾驶员抽气的日期拉出里程表读数?

我试过

WHERE POS_DATE = READINGDATE

但很快意识到里程表读数与购买燃料的时间相匹配的可能性几乎是不可能的!

请提前通知并表示感谢!

1 个答案:

答案 0 :(得分:0)

以下是在每次填充之前或之前获取最新里程表读数的一种方法:

select fs.*,
       (select max(o.odometer)
        from odohis o
        where o.vehicleId = fs.vehicleId and o.reading_date <= fs.pos_date
       ) odometer,
       (select max(o.reading_date)
        from odohis o
        where o.vehicleId = fs.vehicleId and o.reading_date <= fs.pos_date
       ) reading_date
from fs_pos fs;