我有一个表格,其中每一行对应于特定日期的对象价格。同一对象的不同行可以有不同日期的价格(它们将具有相同的object_ids
字段)我试图在单个查询中获取包含每个对象的最新价格的行,如下所示:
SELECT
MAX(price1) KEEP (DENSE_RANK FIRST
ORDER BY day DESC),
MAX(price2) KEEP (DENSE_RANK FIRST
ORDER BY day DESC)
FROM historic_prices H3
GROUP BY object_ids;
不幸的是,当最新价格为 NULL 并且它只返回 NULL 时,这不起作用......有没有办法忽略空值?我什么也找不到。谢谢
编辑:基本上我想做以下事情:
table:
col 1 | col 2 | obj_id | date
----------------------------
null | null | 1 | 100
----------------------------
5 | null | 1 | 90
---------------------------
3 | null | 0 | 80
-----------------------------
7 | 4 | 1 | 70
result :
col 1 | col 2 | obj_id |
-------------------------
5 | 4 | 1
---------------------
3 | null | 0