为每个不同的客户选择除最大订单外的所有订单

Gre*_*iot 0 mysql sql

抱歉格式不正确,但作为更大问题的一部分,我创建了一个生成此表的查询:

id id2    
4  7    
4  6    
1  3    
1  2    
1  1
Run Code Online (Sandbox Code Playgroud)

我将如何为每个 id1 提取没有最高 id2 的行。

我想要的是:

id id2    
4  6    
1  2    
1  1
Run Code Online (Sandbox Code Playgroud)

我似乎只能弄清楚如何摆脱最大的id2整体而不是每个不同的 id1。任何关于实际区分id2每个最大值的帮助id1将不胜感激。

Fah*_*hmi 5

您可以尝试以下方式 -

select a.id, a.id2 
from tablename a
where a.id2 <> (select max(a1.id2) from tablename a1 where a.id=a1.id)
Run Code Online (Sandbox Code Playgroud)