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
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)
;
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯