不用组函数(Max) ,取得某列最高值的三种解法


select xxx,jine from bpcmain where policycreday = '20220501' into temp tmp1;
select max(jine) from tmp1;
19420.34
常规做法:
select distinct (jine) from tmp1;

解法1:
select first 1 xxx,jine from bpcmain where policycreday = '20220501' order by jine desc;
 10:09:59  [SELECT - 1 row(s), 0.020 secs]  Result set fetched
... 1 statement(s) executed, 1 row(s) affected, exec/fetch time: 0.020/0.003 sec  [1 successful, 0 warnings, 0 errors]

解法2:
select jine from tmp1
where jine not in
(
 select distinct A.jine from tmp1 A, tmp1 B
 where A.jine < B.jine 
)
 10:09:51  [SELECT - 1 row(s), 1.407 secs]  Result set fetched
... 1 statement(s) executed, 1 row(s) affected, exec/fetch time: 1.407/0.003 sec  [1 successful, 0 warnings, 0 errors]

解法3:
select * from tmp1 where jine >= all(select jine from tmp1);
 10:09:43  [SELECT - 1 row(s), 0.013 secs]  Result set fetched
... 1 statement(s) executed, 1 row(s) affected, exec/fetch time: 0.013/0.003 sec  [1 successful, 0 warnings, 0 errors]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值