我想按最近的日期选择
Posted
技术标签:
【中文标题】我想按最近的日期选择【英文标题】:i want to select by the Nearest Date 【发布时间】:2014-08-28 08:34:38 【问题描述】: 使用甲骨文
我有这个声明显示QtyAvailable
在特定日期的股票
SELECT st.QTYAVAILABLE
FROM RV_STORAGE st
INNER JOIN m_product p
ON ( st.m_product_id =p.m_product_id)
INNER JOIN AD_Org org
ON ( org.ad_org_id = p.ad_org_id )
WHERE st.DATELASTINVENTORY ?????? '1-AUG-2014'
AND st.M_PRODUCT_ID = 1003965
但在表中RV_Sorage
qtyAvailable
是计算很多时间(库存)所以我想选择靠近QtyAvailable
到我的DATELASTINVENTORY
例子
id qty date
1003965 5 30-APR-10
1003965 168 18-DEC-13
1003965 0 31-DEC-08
1003965 0 31-DEC-08
1003965 5 24-JUL-12
1003965 5 30-SEP-13
1003965 0 30-SEP-13
1003965 2 21-MAY-14
结果必须是与最近日期21-MAY-14
的行中的2
【问题讨论】:
您能否提供有关您的示例的更多详细信息,您指定的日期是 31-OCT-12,结果应该是 21-MAY-14 的数量?!? 您使用的是哪个 DBMS?后格雷斯?甲骨文? 对不起,我更正了我的例子 【参考方案1】:我不确定我是否理解你的问题。如果您希望 QTYAvailable 用于定义的日期,这是您要查找的查询:
SELECT S.QTYAVAILABLE
FROM (SELECT S.QTYAVAILABLE
FROM rv_storage ST
WHERE ST.m_product_id = 1003965
AND ST.datelastinventory < '1-AUG-2014'
ORDER BY ST.datelastinventory DESC) S
WHERE ROWNUM = 1
希望对您有所帮助,我对 Oracle 不熟悉。
【讨论】:
感谢您纠正示例。我更新了我的查询,你能检查它是否有效吗? 感谢您的宝贵时间我的朋友,您的 Querry 完全按照我的意愿工作以上是关于我想按最近的日期选择的主要内容,如果未能解决你的问题,请参考以下文章