早教吧 育儿知识 作业答案 考试题库 百科 知识分享

关于用SQL语句实现过滤一组数据中的最大值的批次名例如:下面的一组数据ID号批次数量289D-2-21.5450289A-3-15200289S-4-21.52150231A-3-150231D-15-21.545231DA-5-6150203A-6-45300203S-5-45200.220D-5-21.5

题目详情
关于用SQL语句实现过滤一组数据中的最大值的 批次名
例如:下面的一组数据
ID号 批次 数量
289 D-2-21.5 450
289 A-3-15 200
289 S-4-21.5 2150
231 A-3-15 0
231 D-15-21.5 45
231 DA-5-6 150
203 A-6-45 300
203 S-5-45 200
.
220 D-5-21.5 30
220 S-5-21.5 200
如何用SQl语句实现下面的结果
289 S-4-21.5 2150
231 DA-5-6 150
203 A-6-45 300
.
220 S-5-21.5 200
▼优质解答
答案和解析
思路是先找出最大数量的ID和数量,然后在找ID和最大数量的行 就行!
以下SQL中DocDetail存储了你所说的数据!
select t1.*
from DocDetail t1,
(select t.id,max(t.qty) qty
from DocDetail t
group by t.id) t2
where t1.id =t2.id
and t1.qty = t2.qty