[英]MYSQL: Get second last record for every customer from a table
我的桌子看起來像這樣
ID DATE customer_id
1 2020-10-01 10
2 2020-10-01 11
3 2020-10-02 10
4 2020-10-03 10
5 2020-10-03 11
我試圖根據每個客戶的倒數第二個 ID 從列表中獲取什么
ID DATE customer_id
2 2020-10-01 11
3 2020-10-02 10
在這里使用ROW_NUMBER
是合適的:
WITH cte AS (
SELECT *, ROW_NUMBER() OVER (PARTITION BY customer_id ORDER BY DATE DESC) rn
FROM yourTable
)
SELECT ID, DATE, customer_id
FROM cte
WHERE rn = 2;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.