users
ID NAME
1 john
2 jack
3 kate
4 sawyer
tasks
ID USER_ID TITLE
1 1 mow lawn
2 2 take out trash
3 1 file taxes
4 2 wash dishes
5 1 learn ruby
6 3 groom dog
Y quiero obtener el nombre y la cantidad de tareas de los usuarios con mas de dos tareas. La solución que encuentro es:
Código SQL:
Ver original
SELECT name, cnt FROM (SELECT COUNT(t.user_id) cnt, u.name FROM tasks t INNER JOIN users u ON u.id=t.user_id GROUP BY t.user_id) AS copy_table WHERE cnt > 1
Hay alguna manera de mejorar esta solución? Muchas gracias.