doemb
2022-04-11 10:08
采纳率: 100%
浏览 27

oracle的一个sql问题

ORACLE数据库的

这是一个消费记录表
以下是表结构
create table t_consumption(
t_id char(32) primary key, --这里用UUID生成32位的id值
t_user_id char(32), --用户id
t_game_id char(32), --游戏的id
t_type number(1), --支付方式 0表示话费支付 1表示游币支付
t_create_time varchar2(50) --消费记录的创建日期
);

测试数据如下

    t_id    t_user_id     t_game_id         t_type         t_create_time 
     1             1                  1                    1             2022-04-10 18:25:26
     2             1                  1                    0             2022-04-10 09:26:28
     3             2                  1                    0             2022-03-28 15:24:49
     4             1                  2                    0             2022-05-26 08:45:26

我想获取同一个用户,消费记录,条件是。假如用户多次购买同一个游戏,我只需要取出最新的购买记录。如上数据,假如我是用户1、我想要的数据是
1 1 1 1 2022-04-10 08:25:26
4 1 2 0 2022-05-26 08:45:26

原因是第一行和第二行,它们的用户id和游戏id一致,但由于第一行的t_create_time 字段更新一些,所以取第一行数据

我该如何编写sql。

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

2条回答 默认 最新

相关推荐 更多相似问题