2012-11-01 76 views
1

在此查詢我需要刪除重複導師ID和計數他們..MySQL的計數查詢

SELECT COUNT(t.tutor_id) FROM tutors AS t 
    INNER JOIN tutor_category_subject as tcs ON t.tutor_id = tcs.tutor_id 
    INNER JOIN subject AS s ON tcs.subject_id = s.subject_id 
WHERE s.subjects LIKE '%business%' 

這是查詢輸出:

+-------------------+ 
| COUNT(t.tutor_id) | 
+-------------------+ 
|     6 | 
+-------------------+ 

,但它應該是4 ..爲什麼家教ID是3,6,15,15,16,16

回答

2

使用distinct

SELECT COUNT(DISTINCT t.tutor_id) FROM tutors AS t 
    INNER JOIN tutor_category_subject as tcs ON t.tutor_id = tcs.tutor_id 
    INNER JOIN subject AS s ON tcs.subject_id = s.subject_id 
WHERE s.subjects LIKE '%business%' 
0

例如,將名爲'total'的別名放入帶有計數的列中,然後在查詢結尾處添加GROUP BY。