Liebe Forumsgemeinde,
Frage zur internen Datenbank in LO 4.3 / Windows 7
Ich möchte in einer Adressliste Vorname, Name, Straße und Ort verketten und alle Datensätze jeweils ohne störende Zwischenräume ausdrucken. Also z.B. getrennt durch ein Leerzeichen oder ein Komma. Jede Lösung ist mir recht. Ich habe nur die Möglichkeit über die Abfrage gefunden:
SELECT "Adressen"."Vorname" || ' ' || "Adressen"."Name" || ' ' || "Adressen"."Ort" "#Name" FROM "Adressen"
Das Problem ist:
Wenn in einem Datensatz ein oder mehrere Daten nicht eingetragen sind (z.B. der Vorname oder der Ort fehlt), dann wird dieser ganze Datensatz in der Abfrage einfach ignoriert und nicht ausgeworfen.
Wer kann mir eine Lösung nennen?
Vielen Dank Andreas
Moderation,4: Betreff korrigiert
Verkettung von Feldern mit leeren Feldern
Moderator: Moderatoren
Re: Verkettung von Feldern mit leeren Feldern
Hallo Andreas,
warum hat Dein Thread eine so merkwürdige Bezeichnung? Die ergibt doch überhaupt keinen Sinn.
Zum Inhalt:
Die Bennung der Tabelle kannst Du Dir sparen, wenn nur eine Tabelle in der Abfrage steht.
sorgt dafür, dass auch bei nicht vorhandenem Vornamen der Datensatz angezeigt wird. Das Leerzeichen wird gleich mit ausgelassen.
Genauso kannst Du dafür natürlich etwas anderes einfügen wie
Jedes Feld, in dem gegebenenfalls kein Inhalt steht und bei dem Du trotzdem einen Datensatz sehen möchtest kannst Du mit IFNULL() entsprechend bearbeiten.
Gruß
Robert
warum hat Dein Thread eine so merkwürdige Bezeichnung? Die ergibt doch überhaupt keinen Sinn.
Zum Inhalt:
Code: Alles auswählen
SELECT "Vorname" || ' ' || "Name" || ' ' || "Ort" "Name" FROM "Adressen"
Code: Alles auswählen
SELECT IFNULL("Vorname" || ' ','' )|| "Name" || ' ' || "Ort" "Name" FROM "Adressen"
Genauso kannst Du dafür natürlich etwas anderes einfügen wie
Code: Alles auswählen
SELECT IFNULL("Vorname",' -??-' ) || ' ' || "Name" || ' ' || "Ort" "Name" FROM "Adressen"
Gruß
Robert