如何计算列值的不同组合?

时间:2015-06-04 16:58:46

标签: sqlite

我使用SQLite记录每个用户对我服务器的每次访问。每次用户使用函数时,我都会在数据库中附加一条记录。

数据库看起来像:

usr_id  fun_id
3       1       // user_3 used function_1
2       13      // user_2 used function_13
3       11      // user_3 used function_11
2       1       // user_2 used function_1
7       2       // ...

usr_id代表用户,fun_id代表login / send_text / logout等函数。

我想知道用gnuplot绘制的每个函数的用法,由谁和多少次使用。简而言之,我需要这个用于绘图:

fun_id  usr_id  used_count  
1       2       1           // user_2 used function_1 once
1       3       1           // user_3 used function_1 once
2       7       1           // user_7 used function_2 once
13      2       3           // user_2 used function_13 three times

如何使用SQL查询生成它?

1 个答案:

答案 0 :(得分:2)

只需使用count(*)以及分组:

select fun_id, usr_id, count(*) as used_count
from tablename
group by fun_id, usr_id
order by fun_id, usr_id;