Oracle SQL查询在最大日期获取价值

一个女孩没有名字

数据:

| ORIGL_ORDER | ORDER | ITEM | DATE        | WHSE | QTY |
| ----------- | ----- | ---- | ----------  | ---- | --- |
| 001         | 107   | 9    | 12/29/2020  | 7    | 6   |
| 001         | 110   | 9    | 12/30/2020  | 1    | 4   |
| 001         | 113   | 9    | 12/30/2020  | 3    | 2   |
| 007         | 211   | 3    | 12/20/2020  | 6    | 1   |
| 007         | 219   | 3    | 12/19/2020  | 5    | 3   | 
| 018         | 390   | 8    | 12/25/2020  | 2    | 1   |

原始所需结果:

| ORIGL_ORDER | ORDER | ITEM | MAX_DATE    | WHSE |
| ----------- | ----- | ---- | ----------  | ---- |
| 001         | 113   | 9    | 12/30/2020  | 3    |
| 007         | 211   | 3    | 12/20/2020  | 6    |
| 018         | 390   | 8    | 12/25/2020  | 2    |

原始问题:对于每个ORIGL_ORDER和ITEM,我想获取max(DATE)和对应于max(Date)的WHSE。如果有多个具有相同max(DATE)的订单,则选择最大的ORDER号。

新的期望结果:

| ORIGL_ORDER | ORDER | ITEM | MAX_DATE    | WHSE | TOTAL_QTY |
| ----------- | ----- | ---- | ----------  | ---- | --------- |
| 001         | 113   | 9    | 12/30/2020  | 3    | 12        |
| 007         | 211   | 3    | 12/20/2020  | 6    | 4         |
| 018         | 390   | 8    | 12/25/2020  | 2    | 1         |
戈登·利诺夫

这回答了问题的原始版本。

只需使用row_number()

select t.*
from (select t.*,
             row_number() over (partition by ORIGL_ORDER, item order by date desc, order_number desc) as seqnum
      from t
     ) t
where seqnum = 1;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SQL oracle查询从租用日期起可以获取最大经验的查询是什么?

来自分类Dev

Oracle SQL日期间查询

来自分类Dev

获取特定日期的 Oracle 查询

来自分类Dev

Oracle中SQL查询的最大长度

来自分类Dev

Oracle SQL-如何获取具有最大日期的记录的分配ID

来自分类Dev

Oracle SQL从联接到另一个表时获取最大日期值

来自分类Dev

在多个日期上运行Oracle SQL查询

来自分类Dev

Oracle SQL查询有关日期

来自分类Dev

Oracle (SQL):如何获取 SQL 查询语法

来自分类Dev

Oracle SQL查询以从am_session表获取每小时的最大登录数

来自分类Dev

Oracle-SQL查询以获取已从String转换为Integer的列的最大值

来自分类Dev

SQL 查询 (Oracle SQL)

来自分类Dev

在oracle中选择最大日期

来自分类Dev

Oracle SQL。获取两个日期之间的日期

来自分类Dev

选择Oracle中价值最大的记录

来自分类Dev

Oracle SQL日期格式

来自分类Dev

Oracle SQL比较日期

来自分类Dev

Oracle SQL遍历日期

来自分类Dev

Oracle SQL比较日期

来自分类Dev

Oracle SQL遍历日期

来自分类Dev

Oracle SQL 查询以获取记录的最大值,不包括值在两个范围内的记录(小于最大值和大于最大值)

来自分类Dev

从子查询获取最大日期-SQL SERVER

来自分类Dev

SQL查询以获取最大日期的商家名称

来自分类Dev

oracle-sql查询从每个基数中选择最大

来自分类Dev

Oracle SQL独特查询

来自分类Dev

ORACLE SQL Developer(查询)

来自分类Dev

Oracle SQL LIKE查询

来自分类Dev

复杂的Oracle SQL查询

来自分类Dev

SQL Oracle查询