【发布时间】:2016-04-19 20:28:22
【问题描述】:
请多多包涵,因为我是新手。我得到了对先前查询的回答,这真的很有帮助。 现在我正在尝试完成项目的另一个步骤。
我的查询是,我有一个表,我正在尝试检索针对订单的特定行输入的最新注释。 下面是表格的示例。
下表中的数据是通过连接两个单独的表获得的。
我使用了以下语法,并且能够获取针对示例订单输入的最新注释 (867318) 但是现在,在订单有多行 (ORDER_LINE) 的情况下,如何检索针对 ORDER_LINE 输入的最新 NOTE_PAD.TEXT?
任何帮助将不胜感激。
SQL 品牌: Oracle DB pre 12c
日期格式: 是真实日期/时间
问题: 最准确/根据 ORDER_NUMBER 检索最近输入的 NOTE_PAD.TEXT 而不每次更改 ROWNUM 的有效方法
SQL 语法:
SELECT *
FROM ( SELECT ORDER_TYPE,
ORDER_NUMBER,
ORDER_LINE,
NOTE_PAD.CREATED_DATE,
NOTE_PAD.TEXT
FROM ORDER_AWB INNER JOIN NOTE_PAD ON ( "ORDER_AWB"."NOTES" = "NOTE_PAD"."NOTES" )
WHERE ( "ORDER_AWB"."ORDER_NUMBER" = '867318' )
ORDER BY NOTE_PAD.CREATED_DATE DESC )
WHERE ROWNUM <= 1
2:http://i.stack.imgur.com/e02YS.png
所以基本上这就是整个代码在数据库中的样子:
我需要根据特定类型的订单及其状态检索注释。
因此
ORDER_TYPE = ‘RO’
ORDER_STATUS = ‘OPEN’
【问题讨论】:
-
它是,并且如果它是单个 order_number 则可以正常工作。但现在我正在尝试为多个订单检索它
标签: sql oracle greatest-n-per-group rownum