永发信息网

oracle 如何在一个表中取A列最大的那条记录,如果A列等于最大值同时有多条,取B列最大的那条记录

答案:2  悬赏:10  手机版
解决时间 2021-01-25 00:15
  • 提问者网友:低吟詩仙的傷
  • 2021-01-24 13:06
oracle 如何在一个表中取A列最大的那条记录,如果A列等于最大值同时有多条,取B列最大的那条记录
最佳答案
  • 五星知识达人网友:鸠书
  • 2021-01-24 13:54
这个不是一个单纯的SQL就可以完成的,需要使用游标,或者存储过程。
select max(A) from table_name; ----取A列最大的记录,譬如说=100;
select count(A) as countA from table_name where A=100;----取等于最大值的有多少条数据;
然后做判断
if countA =1
------按照你的具体做法实现SQL
else
select max(B) from table_name;
fi
全部回答
  • 1楼网友:神也偏爱
  • 2021-01-24 14:12
select * from temp_table where 1 = 1 and a in (select max(a) from temp_table) and b = (select max(b) from temp_table) ;
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯