选择2个最新的"组/批"表中的记录

时间:2014-09-13 10:24:41

标签: mysql sql select

我有这个mysql表中的数据:

id  customer_id  int_proc
1   A               1
2   A               4
3   A               5
4   A               5
5   A               5
6   A               5
7   B               6           
8   B               7
9   B               9
10  B               9
10  B               9
11  C               22

我想获取最新的2个int_proc值中的所有数据,其中customer_id是A和B.

我的结果应该是这样的:

id  customer_id  int_proc
2   A               4
3   A               5
4   A               5
5   A               5
6   A               5
8   B               7
9   B               9
10  B               9

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

SELECT  t.ID 
       ,t.Customer_id
       ,t.Int_Proc
FROM TestTable t 
LEFT JOIN (  SELECT Customer_Id , MIN(Int_Proc) as Int_Proc
             FROM TestTable
             GROUP BY Customer_Id )r
ON t.customer_id  = r.customer_id  
AND t.int_proc = r.int_proc
WHERE r.customer_id IS NULL AND r.int_proc IS NULL

SQL FIDDLE