small-step: COUNT in mehreren Tabellen in MySQL

Beitrag lesen

Hi romy,

sind t1.reporter_id und t2.reporter_id identisch?

Ja, sind sie. Allerdings sind dort viele verschiedene Nutzer vorhanden, deswegen muss ich noch nach der reporter_id selbst suchen.

dann hilft bestimmt:

SELECT
  COUNT(t1.id)
  FROM tabelle1 AS t1
  LEFT JOIN tabelle2 AS t2
  ON t1.reporter_id = t2.reporter_id
  WHERE t2.active = '1'

ansonsten poste mal die Struktur der Tabellen, wie sie verbunden sind, was Du als Ergebnis erzielen willst und was bei den Versuchen für Ergebnisse rauskommen.

Die Struktur wäre ein wenig viel, die beiden Tabellen umfassen jeweils ca. 15 spalten. Egal, hier ein Beispiel:

tabelle1
-----------------------------
| id | reporter_id | inhalt |
|---------------------------|
| 1  | 12          | test1  |
| 2  | 12          | test2  |
| 3  | 7           | test3  |
-----------------------------

tabelle2
--------------------------------------
| id | reporter_id | active | inhalt |
|------------------------------------|
| 1  | 12          | 1      | test1  |
| 2  | 12          | 0      | test2  |
| 3  | 7           | 0      | test3  |
--------------------------------------

So, jetzt möchte ich die Anzahl der Einträge von reporter 12 aus tabelle1 haben. Das wären 2. Plus die Anzahl der Einträge aus tabelle2 bei denen der reporter ebenfalls 12 ist und active 1 ist, das wäre 1 Eintrag.

Zusammenzählen kann ich das auch später, mir geht es erstmal um die jeweilige Anzahl.

Gruß,
small-step