[英]MySQL Get val with max(date) along with sum
這是我的問題。 我有一個包含以下列的表格:
player_id | win_amount | loss_amount | datetime
每條記錄都包含玩家的 id、輸贏金額(另一個字段變為 0)和日期時間。 我想要一個 MySQL 查詢來獲得以下信息:
player_id
sum(win_amount) - sum(loss_amount)
該玩家的sum(win_amount) - sum(loss_amount)
loss_amount
最后日期loss_amount
loss_amount
嘗試以下查詢,利用GROUP BY
、一些聚合函數和相關子查詢。 將table
替換為您的實際表名:
SELECT
t1.player_id,
SUM(t1.win_amount) - SUM(t1.loss_amount) AS net_win_amount,
MAX(IF(t1.loss_amount > 0,
t1.datetime,
NULL)) AS last_loss_datetime,
(SELECT
t2.loss_amount
FROM
`table` AS t2
WHERE
t2.player_id = t1.player_id
AND t2.loss_amount > 0
ORDER BY t2.datetime DESC
LIMIT 0 , 1) AS last_loss_amount
FROM
`table` AS t1
GROUP BY t1.player_id
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.