2011-11-14 5 views
0

Je sais que c'est basique mais je trouve cela compliqué et je n'arrive pas à bien formuler la question juste pour trouver la réponse.Compte le nombre de rangées dans chaque groupe dans MySQLi

Ce que je voudrais faire est de prendre ces tables -

Table names 
name | nameID | 
----------------- 
Jhon | 1 
Bob | 2 
George | 3 
Kim | 4 

Table mark 
nameID | child 
-------------- 
1  | 0 
1  | 0 
1  | 1 
2  | 1 
2  | 0 
2  | 1 
3  | 0 
3  | 0 
4  | 1 
4  | 1 
4  | 1 
4  | 0 

Et puis compter combien de fois chaque nom des noms de table apparaît dans la marque de table avec enfant = 1, vous obtiendrez:

name | count 
-------------- 
Jhon | 1 
Bob | 2 
Kim | 3 

Répondre

1

essayez ceci.

select n.name, count(*) 
from names n, mark m 
where n.nameID = m.nameID and m.child = '1' 
group by n.name 
+0

Fonctionne très bien, et merci pour la réponse rapide. – Roy

Questions connexes