2012-11-09 32 views
0

可能重复:
mysql: Using LIMIT within GROUP BY to get N results per group?MySQL的选择与限制由字段值

我试过group by,后来我就只能得到1元ACCOUNT_ID,我想10%ACCOUNT_ID。这是我正在寻找的。

SELECT id,account_id FROM whatever {LIMIT to 10 of each account_id} 
+0

我不认为我可以使用变量与我的MySQL驱动 –

+0

谁标志着这个作为duplacate和提供那个链接?你不觉得这是完全不同的问题吗? – Green

回答

0

您可以使用等级为每个ACCOUNT_ID,ID组

例子:

SELECT id,account_id FROM (
SELECT id,account_id, 
    @acrank:=CASE 
       WHEN @aid <> id THEN 1 
       ELSE @acrank+1 END AS rn, 
    @id:=id AS id_set 
FROM 
    (SELECT @acrank:= -1) nr, 
    (SELECT @id:= -1) n, 
    (SELECT * FROM Test ORDER BY id, account_id) t 
) x WHERE rn < 11