Mysql 显示每个用户的操作数,按操作ID分组

Mysql 显示每个用户的操作数,按操作ID分组,mysql,sql,django-admin,Mysql,Sql,Django Admin,为了解决这个问题,我做了以下查询:计算每个用户执行Django admin的操作数 SELECT Count(l.id), u.username, u.first_name, u.last_name, u.is_staff FROM django_admin_log l, auth_user u WHERE u.id = l.user_id GROUP BY u.id ORDER BY 1 DESC; 现在我想显示每个

为了解决这个问题,我做了以下查询:计算每个用户执行Django admin的操作数

SELECT Count(l.id),
       u.username, 
       u.first_name, 
       u.last_name, 
       u.is_staff 
FROM   django_admin_log l, auth_user u
WHERE  u.id = l.user_id
GROUP  BY u.id 
ORDER  BY 1 DESC;
现在我想显示每个用户执行了多少个操作,按操作ID分组。这个想法与上面的查询相同,但知道它们是操作类型

django_admin_日志表结构:

+-----------------+----------------------+------+-----+---------+----------------+
| Field           | Type                 | Null | Key | Default | Extra          |
+-----------------+----------------------+------+-----+---------+----------------+
| id              | int(11)              | NO   | PRI | NULL    | auto_increment |
| action_time     | datetime             | NO   |     | NULL    |                |
| user_id         | int(11)              | NO   | MUL | NULL    |                |
| content_type_id | int(11)              | YES  | MUL | NULL    |                |
| object_id       | longtext             | YES  |     | NULL    |                |
| object_repr     | varchar(200)         | NO   |     | NULL    |                |
| action_flag     | smallint(5) unsigned | NO   |     | NULL    |                |
| change_message  | longtext             | NO   |     | NULL    |                |
+-----------------+----------------------+------+-----+---------+----------------+

谢谢:

对于不在聚合功能中的列,您应该按分组 在您的情况下,您应该为用户分组。。实例

  SELECT Count(l.id),
         u.username, 
         u.first_name, 
         u.last_name, 
         u.is_staff 
  FROM   django_admin_log l, auth_user u
  WHERE  u.id = l.user_id
  GROUP  BY  
          u.username, 
         u.first_name, 
         u.last_name, 
         u.is_staff 
  ORDER  BY 1 DESC;