[英]How to get the last inserted row when I Group by column in mySQL?
我運行此查詢可以讓我在10分鍾的時間內獲得活躍用戶。 clicks
表在每個page
上都有user
多行。 我可以獲取user
列表,但輸出旁邊的page
不是最后一行,而是第一行。
這意味着如果為特定user
存儲了4行,第一行是1分鍾前,第四行是8分鍾前,它將顯示第8分鍾page
,而不是第1分鍾page
。
如何解決呢?
SELECT user
, page
FROM clicks
WHERE timestamp >= NOW() - INTERVAL 10 MINUTE
GROUP
BY user
ORDER
BY id DESC
mysql_insert_id檢索上一個查詢為AUTO_INCREMENT列生成的ID
嘗試這個:
select temp.*
from
(
select user , page
from clicks
order by timestamp desc
) temp
group by temp.user;
這將適用於所有版本
SELECT
id, tc_stage_id, user
FROM
clicks
WHERE
id IN (SELECT
MAX(id)
FROM
clicks
GROUP BY user)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.