Probleme mit ||-Pipes im Kontext AS

Hallo,
ich habe folgendes Problem und bin für jede Hilfe dankbar:

Bislang habe ich mit Pipes folgende Abfragen erzeugt, um das Filtrat mit Trennzeichen ; zu versehen, Beispiel:

SELECT Name||’;’||Vorname FROM Personen;

Würde ich „normal“, ohne Trennzeichen abfragen, würde das so aussehen:

SELECT Name, Vorname FROM Personen;

Hier könnte ich nun ein Alias mit AS erzeugen, würde so aussehen:

SELECT Name AS Zuname, Vorname FROM Personen;

Jetzt kommt mein Problem: Wie setze ich das letzte Beispiel um, dass eben die Spalte Zuname direkt mit ;-getrennt an Vorname liegt, anders gefragt: Wie muss ich die Pipes setzen. Ich habe verschiedenes probiert, zB:

SELECT Name AS Zuname||’;’||Vorname FROM Personen;

SELECT (Name AS Zuname)||’;’||, Vorname FROM Personen;

Klappt alles nicht. Erbitte Hilfe.

MfG

Oliver

Hi Oliver,

normalerweise folgt AS auf die (berechnete) Spalte, die den Namen bekommen soll:

SELECT Name ||’;’|| Vorname AS Zuname FROM Personen;
oder sollte ich alles falsch verstanden haben? Sieht schon komisch aus, wenn die Verkettung von Name und Vorname plötzlich Zuname heißt :smile:))

Gruß Ralf

Hallo Ralf,

nein - ich verkette nicht den Namen und Vornamen, sondern ich füge bei der Ausgabe ein Trennzeichen zwischen Namen und Vornamen ein.

ZB:

Name;Vorname
Müller;Andreas

Daraus soll sozusagen werden:

Zuname;Vorname
Müller;Andreas

MFG
Oliver

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Oliver,

nein - ich verkette nicht den Namen und Vornamen,

Doch. Die Ausgabe ist genau eine Spalte, das Ergebnis der Verkettung, also genau einmal ‚AS‘ hinter der Verkettung möglich.

Du willst offenbar die Spaltenüberschrift in der gleichen Art verketten. Da du deine Datenbank noch nicht erwähnt hast, würde ich ohne Gewähr (hab auch gerade keine Datenbank hier :wink: so etwas wie

...Name||';'||Vorname as 'Zuname;Vorname'...

vorschlagen.
Bei Oracle SQLPlus gibt es sicher einen speziellen Befehl

SET HEADING

(oder so), aber wie gesagt…

Gruß, m.

Moin, Oliver,

nein - ich verkette nicht den Namen und Vornamen, sondern ich
füge bei der Ausgabe ein Trennzeichen zwischen Namen und
Vornamen ein.

aha, da liegt der Hund begraben. Du verkettest Name, Trennzeichen und Vorname zu einer berechneten Spalte - und der kannst Du dann mit AS eine Überschrift verpassen, natürlich auch sowas wie Muzel es vorschlägt. Wenn Du das nicht tust, steht da Expression oder etwas ähnliches, je nach DBMS.

Daraus soll sozusagen werden:

Zuname;Vorname
Müller;Andreas
Hinterhuber;Anton
Kurz;Frauke

Über Geschmack lässt sich trefflich streiten - ich empfände dieses bammelnde Semikolon als Zumutung.

Gruß Ralf

Ihr habt Recht, ich verkette doch damit, stimmt. Ich probiere das Montag mal im Büro aus:

Name||’;’||Vorname as ‚Zuname;Vorname‘

Das KÖNNTE viell gehen, bin mir aber nicht sicher.

Danke für jede Hilfe!!

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]