Hallo,
ein einfaches Beispiel:
Tabelle1
id_a - - - produkt - - - - - - datum
1 - - - - - - - Audi- - - - - - - - 4534532523
2 - - - - - - - Mercedes - - - - - 4534532523
3 - - - - - - - Audi - - - - - - - - 4534532523
4 - - - - - - - Porsche - - - - - - 4534532523
5 - - - - - - - VW - - - - - - - - -4534532523
6 - - - - - - - Seat - - - - - - - - 4534532523
7 - - - - - - - Audi - - - - - - - - - 4534532523
8 - - - - - - - VW - - - - - - - - -4534532523
Tabelle2
id_b - - - produkt - - - - - - - spalte x
1 - - - - - - - Renault - - - - - - dsfasdfasdf
2 - - - - - - - Ferrari - - - - - - - dsfasdf
3 - - - - - - - Audi - - - - - - - - dsfasdf
4 - - - - - - - Opel - - - - - - - - adfasdfas
5 - - - - - - - Audi - - - - - - - - dsfsadfasdf
6 - - - - - - - VW - - - - - - - - - asdf
Zunächst möchte ich aus Tabelle 1 die Automarken ausgeben lassen, sowie die Anzahl. Beispiel:
Audi 3
Mercedes 1
Porsche 1
VW 2
Seat 1
Das mySQL Statement lautet ungefähr so:
PHP-Code:
SELECT produkt as name, count(produkt) as anzahl FROM tabelle1 GROUP BY produkt
Bei der Ausgabe muss ich jedoch nun auch überprüfen, ob dieses Fabrikat in Tabelle2 mindestens 1mal auftaucht. Das Ergebnis soll dann ungefähr so aussehen:
Audi 3 [JA]
Mercedes 1 [NEIN]
Porsche 1 [NEIN]
VW 2 [JA]
Seat 1 [NEIN]
[JA] bedeutet, zu diesen Fabrikat gibt es in
Tabelle 2 mindestens 1 Eintrag.
[NEIN] bedeutet das es zu diesen Fabrikat in
Tabelle 2 keinen Eintrag gibt
Ich dachte an folgendes SQL-Statement:
PHP-Code:
SELECT tabelle1.produkt as name, count(tabelle1.produkt) as anzahl, tabelle2.id_b FROM tabelle1 LEFT JOIN tabelle2 ON tabelle2.produkt=tabelle1.produkt GROUP BY produkt
Ich kann jetzt zwar prüfen ob es in der Tabelle 2 zu diesen Fabrikat auch einen Eintrag gibt (über die tabelle2.id_b), jedoch wird jetzt die Anzahl der Fabrikate aus Tabelle 1 falsch berrechnet (da in der Tabelle 2 die Fabrikate zum Teil mehrfach vorhanden ist).
Wie kann ich das Problem lösen so dass trotzdem die Anzahl aus Tabelle 1 richtig berechnet wird?
Ich hoffe ich habe mich einigermaßen verständlich ausgedrückt.
Danke für die Unterstützung
Gruss
Dieter