Hallo,
Die Problemschilderung:
Es ist eine Tabelle vorhanden, welche folgende Felder enthält:
id
INT auto_increment PRIMARY_KEY
key
TEXT NOT NULL
en\_value
TEXT NULL
de\_value
TEXT NULL
fr\_value
TEXT NULL
Wenn jedoch kein Wert für den deutschen Ausdruck hinterlegt ist, so möchte ich den englischen auslesen.
SELECT
de\_value
,en\_value
FROMlang
WHEREkey
= 'hello';
Du suchst COALESCE():
SELECT -- Gib mir den ersten
COALESCE(de_value, en_value, fr_value, '') value -- von NULL verschiedenen
-- Eintrag der Parameterliste
FROM
lang
WHERE
`key` = 'hello' -- key ist ein Spaltenname, den ich auf
-- *jeden* Fall vemeide
Nein, diese komplexen IF-Konstrukte sollte man lieber lassen.
Freundliche Grüße
Vinzenz