sql找出更改后的利率值

id string,//利率的类型
times date,//更改时间
val string//利率值

//外部表
create external table rate_w(
id string,
times date,
val string
)
row format delimited fields terminated by ','
location '/warehouse/rate';


hadoop fs -put rate /warehouse/rate

1,2018-01-01,11
1,2018-01-01,1
12,2018-01-01,3
52,018-01-01,52
5,2018-01-01,21
3,2018-05-01,32
3,2018-04-01,32
1,2018-03-01,42
2,2018-03-02,11
2,2018-02-01,21


select * from rate_w;
1	2018-01-01	11
1	2018-01-01	1
12	2018-01-01	3
52	NULL	52
5	2018-01-01	21
3	2018-05-01	32
3	2018-04-01	32
1	2018-03-01	42
2	2018-03-02	11
2	2018-02-01	21



select d.* from rate_w d right join 
(
select b.id,max(times) as t from (
select a.id,a.times,a.val from rate_w a where times>='2018-01-01'
) b group by b.id
) c 
on d.times=c.t and d.id=c.id;


//找出某个时间以内,更改的值的最新来,使用group by join on 子连接
1	2018-03-01	42
12	2018-01-01	3
2	2018-03-02	11
3	2018-05-01	32
5	2018-01-01	21




  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值