我有兩張桌子messages和groups
訊息
id, content, group_id, created_at
團體
id, created_at
我想查找n按其中最新訊息排序的組數。如何使用 PostgreSQL 14 做到這一點?
我正在運行以下查詢,但它沒有給出預期的結果。
SELECT *
FROM (
SELECT id, group_id, created_at, row_number() OVER (PARTITION BY group_id ) AS rn
FROM messages order by created_at desc
) sub;
uj5u.com熱心網友回復:
如果我理解正確,您可以嘗試ORDER BY created_at desc輸入視窗函式,這可能會幫助您獲得每個 group_id 的最高行數
SELECT *
FROM (
SELECT *, row_number() OVER (PARTITION BY group_id order by created_at desc) AS rn
FROM messages
) sub
WHERE rn = 1
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/464772.html
標籤:sql PostgreSQL
上一篇:如何計算每個月的運行總額?
