Postgresql

Postgresql 根據最小值獲取行

  • March 6, 2021

有這張表:

我想為 的每個值warehouse_id獲取and ,其中行的最小值為,並且與特定值匹配,按.days warehouse_id``days``destination_id``days

例如destination_id= 1

這是查詢先排序warehouse_iddays然後僅根據DISTINCT ON子句獲取第一條記錄

select distinct on (warehouse_id) 
    warehouse_id,
    days 
  from this_table 
  where destination_id = 1 
  order by warehouse_id, days 
倉庫id | 天
-----------: | ---:
 1 | 2
 2 | 3
 3 | 5

db<>在這裡擺弄

一個簡單的聚合,如

select warehouse_id, min(days)
from this_table
where destination_id = 1
group by warehouse_id;

在問題中給出答案。

引用自:https://dba.stackexchange.com/questions/286198