mysql - Bagaimana untuk melaksanakan pertanyaan ini dengan sql
ringa_lee
ringa_lee 2017-05-24 11:32:47
0
1
551

Soal setiap pengguna apabila exam_publish_id ialah (1, 2, 3), dan kira bilangan status berbeza yang dikumpulkan mengikut user_id (iaitu, status+1 yang sama).
Struktur meja adalah seperti berikut:

Nantikan keputusan berikut:

user_id status1 status2 status3
27047     2       1         0
27410     0       2         1
27047     1       1         1
ringa_lee
ringa_lee

ringa_lee

membalas semua(1)
刘奇

Akhirnya mencubanya. . . Jawapannya adalah seperti berikut:

SELECT user_id, COUNT(IF(status=0,true, null)) AS 'right_count', COUNT(IF(status=1,true, null)) AS 'error_count', COUNT(IF(status=2,true, null)) AS 'absenteeism_count' FROM online_exam_user_detail WHERE exam_publish_id in (1, 2, 3) GROUP BY user_id;
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan