Comment sélectionner le nombre dans une jointure interne avec un groupe?
SELECT COUNT(table1.act) FROM table1
INNER JOIN table2 ON table1.act = table2.act
GROUP BY table1.act
Cela retournera le nombre d'actes trouvé dans la table2.
Ajouter
SELECT table1.act, COUNT(table1.act) AS test
Résultats
act test
------- ----
17682 3
17679 3
17677 3
11636 1
11505 1
Je veux recevoir le nombre total d'actes trouvés.
Donc, je veux obtenir 5. Pouvez-vous aider?
Vous pouvez envelopper cette requête dans une autre requête:
SELECT COUNT(*) FROM (
SELECT COUNT(table1.act) AS actCount FROM table1
INNER JOIN table2 ON table1.act = table2.act
GROUP BY table1.act
) t
Utilisez compte distinct
SELECT COUNT(distinct table1.act) FROM table1
INNER JOIN table2 ON table1.act = table2.act
SELECT COUNT(table2.act) FROM table1
INNER JOIN table2 ON table1.act = table2.act
si vous voulez juste que le résultat compte,
SELECT COUNT(1)
FROM table1
INNER JOIN table2 ON table1.act = table2.act
GROUP BY table1.act
cela devrait vous donner