nntp2http.com
Posting
Suche
Optionen
Hilfe & Kontakt

CASE WHEN und REGEXP?

Von: Peter (peter.gilles@gmail.com) [Profil]
Datum: 12.10.2009 19:34
Message-ID: <c1ed4461-b460-4aa5-9421-e02bf235a0b9@b2g2000yqi.googlegroups.com>
Newsgroup: de.comp.datenbanken.mysql
Hallo zusammen,
aus einer Namendatenbank möchte ich in einem Schritt bestimmte Namen
heraussuchen und die jeweiligen Anzahlen gruppiert pro Wohnort/
Gemeinde ausgeben. Zusammengebastelt habe ich folgendes Konstrukt, das
tatsächlich funktioniert:

SELECT *, SUM(CASE WHEN name = 'Schmit' THEN anzahl END) AS zahl1, SUM
(CASE WHEN name ='Schmitz' THEN anzahl END) AS zahl2, SUM(CASE WHEN
name ='Meyer' THEN anzahl END) AS zahl3 from namen WHERE name='Schmit'
or name = 'Schmitz' or name = 'Meyer' GROUP BY gemeinde

Es gibt mir pro 'gemeinde' die Häufigkeiten von 'Schmit', 'Schmitz'
und 'Meyer'. Nun möchte ich aber neben 'Schmitz' auch 'Schmitzens'
bekommen, und würde daher mit REGEXP arbeiten, allerdings funktioniert
Folgendes dann nicht, bzw. der REGEXP-Aufruf wird ignoriert und die
Abfrage wird so wie oben durchgeführt.

SELECT *, SUM(CASE WHEN name REGEXP  'Schmit' THEN anzahl END) AS
zahl1, SUM(CASE WHEN name REGEXP 'Schmitz' THEN anzahl END) AS zahl2,
SUM(CASE WHEN name REGEXP 'Meyer' THEN anzahl END) AS zahl3 from namen
WHERE name='Schmit' or name = 'Schmitz' or name = 'Meyer' GROUP BY
gemeinde

Hat jemand ne Idee, woran das liegen könnte?

Merci,
Peter

[ Auf dieses Posting antworten ]

Antworten