Seite 1 von 1

Frage zu CONCAT in einer MySql-Abfrage

Verfasst: 11.11.2013, 17:40
von xoni
Hallo,

mit

Code: Alles auswählen

CONCAT(o.gender,' ', o.firstname,' ', o.lastname) AS name,
möchte ich mir den vollständigen Namen nebst Anrede holen.
Problem dabei:
Die Anrede (Frau/Herr) wurde als 0/1 in der DB abgelegt.
Wenn ich diese Abfrage durchführe erhalte ich dann logischerweise

0 Maria Mustermann.

Meine Frage lautet: Kann man schon in der Abfrage zwischen 0/1 unterscheiden und dann ggf. das Frau/Herr einfügen,
also Frau Maria Mustermann?

Vielen Dank für Eure Tipps...

Verfasst:
von

Verfasst: 11.11.2013, 18:22
von RK423
Mit CONCAT(IF(o.gender = 0, 'Frau', 'Herr'),' ', o.firstname,' ', o.lastname) AS name?

Verfasst: 11.11.2013, 22:50
von Thomas B.
Warum speicherst du sie nicht einfach als "Frau" und "Herr" in deiner Tabelle ab? Das wäre doch viel einfacher.

Verfasst: 12.11.2013, 09:24
von xoni
@RK423 - vielen Dank!

@Thomas B - Ja, im Prinzip hast Du recht; allerdings habe ich keine Lust
jetzt in der DB rumzuwurschteln, ist eigentlich nicht mein Projekt.
Ich hätte wahrscheinlich ein ENUM genommen (Frau/Herr/Firma) und gut ist.