Hallo
Ich habe zwei Tabellen. Einmal die Tabelle "ehrenamtswegweiser" mit dem Feld "bereich1". Dieses Feld wird durch ein Formular mit Chekcboxen mit Tätigkeitsbereichen gefüllt. Wenn mehrere Checkboxen aktiviert wurden dann werden die jeweiligen Werte durch
voneinander getrennt in diese Feld geschrieben (also ein Strin). So könnte z.B. ein gefülltes Feld ausssehen: Sport und Bewegung
Gesundheit
Nun habe ich noch eine zweite Tabelle "taetigkeitsbereiche" mit dem Feld "taetifkeitsbereich". Diese Tabelle ist mit allen möglichen Tätigkeitsbereichen gefüllt, hat also 14 Zeilen/Datensätze und wird nicht jehr verändert.
Nun möchte ich herausbekommen wieviele Tätigigkeitsbereiche ausgewählt wurden und möchte alle auflisten und dahinter die Anzahl, auch wenn sie Null ist.
Ich benutze folgende Query:
SELECT t.taetigkeitsbereich, count( w.bereich1 ) AS anzahl
FROM taetigkeitsbereiche t
LEFT JOIN ehrenamtswegweiser w ON w.bereich1 LIKE '%t.taetigkeitsbereich%'
GROUP BY t.taetigkeitsbereich
ORDER BY anzahl DESC
Leider listet er mir nur alle Tätigkeitsbereiche auf, aber in der anzahl - Spalte stehen nur Nullen.
Wenn ich folgende Zeile der Anfrage so ändere:
LEFT JOIN ehrenamtswegweiser w ON w.bereich1 = t.taetigkeitsbereich
dann zählt er wenigstens die Tätigkeitsbereiche die einzeln in den Feldern stehen als nicht durch
getrennt sind.
Aber durch das LIKE und die anderen Operatoren sollte es doch eigentlich funtionieren oder nicht?
Ich habe zwei Tabellen. Einmal die Tabelle "ehrenamtswegweiser" mit dem Feld "bereich1". Dieses Feld wird durch ein Formular mit Chekcboxen mit Tätigkeitsbereichen gefüllt. Wenn mehrere Checkboxen aktiviert wurden dann werden die jeweiligen Werte durch
voneinander getrennt in diese Feld geschrieben (also ein Strin). So könnte z.B. ein gefülltes Feld ausssehen: Sport und Bewegung
Gesundheit
Nun habe ich noch eine zweite Tabelle "taetigkeitsbereiche" mit dem Feld "taetifkeitsbereich". Diese Tabelle ist mit allen möglichen Tätigkeitsbereichen gefüllt, hat also 14 Zeilen/Datensätze und wird nicht jehr verändert.
Nun möchte ich herausbekommen wieviele Tätigigkeitsbereiche ausgewählt wurden und möchte alle auflisten und dahinter die Anzahl, auch wenn sie Null ist.
Ich benutze folgende Query:
SELECT t.taetigkeitsbereich, count( w.bereich1 ) AS anzahl
FROM taetigkeitsbereiche t
LEFT JOIN ehrenamtswegweiser w ON w.bereich1 LIKE '%t.taetigkeitsbereich%'
GROUP BY t.taetigkeitsbereich
ORDER BY anzahl DESC
Leider listet er mir nur alle Tätigkeitsbereiche auf, aber in der anzahl - Spalte stehen nur Nullen.
Wenn ich folgende Zeile der Anfrage so ändere:
LEFT JOIN ehrenamtswegweiser w ON w.bereich1 = t.taetigkeitsbereich
dann zählt er wenigstens die Tätigkeitsbereiche die einzeln in den Feldern stehen als nicht durch
getrennt sind.
Aber durch das LIKE und die anderen Operatoren sollte es doch eigentlich funtionieren oder nicht?
Kommentar