dedlfix: mySQL: Ergebnisse zweier Spalten zu einer Spalte verbinden?

Beitrag lesen

echo $begrüßung;

Wenn ich jetzt mache: SELECT CONCAT(a,b) as ab  und mir das Ergebnis ausgeben lasse, lautet das so:

abcdef

Ich möchte als Ergebnismenge aber:
abc
def

So als wären die Mengen der Spalte B direkt in die Spalte A geschrieben. Hab ich bis jetzt leider nicht hinbekommen...

Hatte ich doch recht vermutet. Man kann bei einer Abfrage keine Ergebniszeilen zusätzlich generieren als schon Datenzeilen vorhanden sind. Entweder zwei Abfragen starten und mit UNION verbinden, was du ja schon begonnen hast. Nur solltest du dabei nick_from und nick_to in die selbe Ergebnisspalte bringen und nicht in unterschiedliche. Z.B. so:

(SELECT id, nick_from FROM ...)
  UNION
  (SELECT id, nick_to FROM ...)
  ORDER BY 2    [*]

Alternativ kannst du mit Joins arbeiten, wobei du allerdings genau die Join-Bedingung festlegen musst, damit sich nicht alles mit jedem verbindet (was ein kartesisches[**] Produkt ergäbe).

[*] Spaltennummer verwenden oder der 2. Spalte ein Alias verpassen und das verwenden.
[**] nach Rene Descartes, nicht nach Karthago, deswegen ohne h

echo "$verabschiedung $name";