我有交易表,我在其中存储交易用户。 我需要用户最后一笔交易。什么是userId查找最后n个事务组的最佳方法。 要么 将最后n个事务存储在其他元表中是好方法。 Plz帮助我,因为我必须以用户方式向客户发送最后10个交易。
什么是最佳解决方案。我正在使用mysql数据库。
我们如何创建每个用户的最后10个交易的视图......是否可能?
答案 0 :(得分:0)
你可以使用变量来做到这一点。
为每个用户事务分配row_number,结果按事务日期排序,因此我们每个用户只能获得前10行。
select * from (
select *,
@num := if(@user_id= user_id, @num + 1, 1) as row_number,
@user_id := user_id as dummy
from transactions,
(select @num := 0, @user_id:= '') d
order by user_id, transDate desc )T
where row_number <= 10;