相同company_id最多显示3条记录
表结构如下:
id name company_id
1 a 1
2 b 1
3 c 1
4 d 1
5 e 2
6 f 2
7 g 2
8 h 2
9 i 2
10 j 3
想要的结果
id name company_id
1 a 1
2 b 1
3 c 1
5 e 2
6 f 2
7 g 2
10 j 3
表结构如下:
id name company_id
1 a 1
2 b 1
3 c 1
4 d 1
5 e 2
6 f 2
7 g 2
8 h 2
9 i 2
10 j 3
想要的结果
id name company_id
1 a 1
2 b 1
3 c 1
5 e 2
6 f 2
7 g 2
10 j 3
解决方案 »
- 读取MySQL里数据表的数据(表里中文字符),然后放在VC界面上就出现乱码,不知道该咋办了?
- 问一个sql语句
- select 所有值是最大值的记录
- 高手们..送分了~~!要详细回答
- 请教优化查询方法.谢谢了
- 请问怎样得到mysql中的BLOB类型的字段值的大小
- 为什么我的MyQL要standalone service才能启动???
- MYSQL如何进行基本的查询记录并编辑操作
- Mysql:ERROR 2003 (HY000) 110错误
- mac下终端mysql登陆之后 无法创建表 查询也为空 确认不是权限问题 请各位大神帮忙
- mysql5.1用不上联合索引,A能用B不能用
- 请教:关于mysql批量写入
select a.* from tablename a left join tablename b
on a.company_id=b.company_id and a.id>=b.id
group by a.id,a.name,a.company_id
having count(b.id)<=3
order by a.company_id,a.id;
[征集]分组取最大N条记录方法征集...
5M / 20K
然后 "相同company_id最多显示3条记录 " 也就是要输出 20K*3 = 60 K条记录。速度很难快啊。
先添加复合索引 (company_id ,id) ,这样可以提高一部分效率。