有两个表tasks和users,加了个多对多的关系用来获取任务的参与者,中间表是task_user。现在有一个需求要获取参与人数最多的一条任务。我现在的方法是用一条sql语句实现的:
SELECT * from tasks order by (select count(id) from task_user where task_user.task_id = tasks.id) DESC limit 1<br></br>
不过这样的话任务多了,会执行很多次
select count(id) from task_user where task_user.task_id = tasks.id<br></br>
大家帮忙看下有没有别的解决办法,sql语句方面是我的弱项。。