mysql 查询单字段 多个值匹配

表大致如下:
id sample
1 a
2 b
3 a
4 c
5 d
6 c

选择id=3,4(指定字段)的sample分组的count

   select count(sample) from table where id=3 or id=4 group by sample

目前的问题是如果要查询的id值过多,查询语句就会非常长,而且如果表较大速率也会非常慢,想问下有没有更好的操作,谢谢

阅读 10.7k
1 个回答

连续情况,用BETWEEN,比如

SELECT COUNT(sample) FROM table WHERE id BETWEEN <你的起始id> AND <你的结束id> GROUP BY sample

离散情况,用IN,比如

SELECT COUNT(sample) FROM table WHERE id IN (<枚举出你要搜索的id,逗号隔开>) GROUP BY sample
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏