mysql:
select * from t_user u
, (
select *,max(createTime) as maxCreateTime from t_recharge_history
group by userId
)as b
where u.id = b.userId and u.status = 0 and u.id in (1000,1002)
order by maxCreateTime desc;
, (
select *,max(createTime) as maxCreateTime from t_recharge_history
group by userId
)as b
where u.id = b.userId and u.status = 0 and u.id in (1000,1002)
order by maxCreateTime desc;
sqlserver,oracle:
select * from T_Order o
inner join (
select * from (
select ROW_NUMBER()over(partition by orderId order by updateTime desc )as rid,* from T_Order_Histroy h
)as a where a.rid = 1
)as b on o.id = b.orderId
where o.userId = 10000 and o.status =1
order by updateTime desc;
inner join (
select * from (
select ROW_NUMBER()over(partition by orderId order by updateTime desc )as rid,* from T_Order_Histroy h
)as a where a.rid = 1
)as b on o.id = b.orderId
where o.userId = 10000 and o.status =1
order by updateTime desc;