Hallo Andreas,
dann machst Du entweder etwas falsch oder nutzt nicht MySQL.
Bitte poste Dein Statement mit GROUP_CONCAT() und gib das von Dir verwendeteHallo ok ich benutze mysql mit php5 und einbindung ueber mysqli und ich habe es so versucht
SELECT distinct tbl_Mitarbeiter.id, tbl_Mitarbeiter.Name,
tbl_Mitarbeiter.Vorname, group_concat(tbl_Abteilungen.Name AS Abteilung)
FROM tbl_Mitarbeiter, tbl_Abteilungen, tbl_Mitarb_Abt
WHERE tbl_Mitarbeiter.id = tbl_Mitarb_Abt.FS_Mitarb
AND tbl_Abteilungen.id = tbl_Mitarb_Abt.FS_Abt
AND tbl_Mitarbeiter.EAN = '" . $kennung . "'");ich versuche mal, Dein Statement lesbar und für mich verständlich zu gestalten. Dazu nutze ich die explizite Join-Syntax und Alias-Namen.
SELECT
m.id,
m.Name,
m.Vorname,
GROUP_CONCAT(a.Name) AS Abteilungen, -- hier war was falsch
FROM
tbl_Mitarbeiter m
INNER JOIN tbl_Mitarb_Abt ma
ON m.id = ma.FS_Mitarb
INNER JOIN tbl_Abteilungen
ON ma.FS_Abt = a.id
WHERE m.EAN = '<irgendein wert>'
GROUP BY -- die Spalten nach denen gruppiert
m.id, -- wird, sollte man nicht vergessen
m.Name,
m.Vorname
>
> sollte eigentlich das von Dir gewünschte zurückliefern.
>
> Tipp: Teste SQL-Statements zuerst mit dem Client Deiner Wahl, z.B. phpMyAdmin
> oder MySQL-Query-Browser oder was auch immer, bevor Du die Statements mit einer Programmiersprache wie PHP zusammenbaust.
>
> Noch ein Tipp: Wenn Du schon mysqli verwendest, dann empfehle ich, dass Du Dir
> den Luxus von prepared Statements gönnst:
>
> <http://www.php.net/manual/de/function.mysqli-stmt-prepare.php>
> <http://www.php.net/manual/de/function.mysqli-stmt-bind-param.php>
> <http://www.php.net/manual/de/function.mysqli-stmt-execute.php>
>
> und weitere dort verlinkte Funktionen
>
>
> Freundliche Grüße
>
> Vinzenz
Hallo vielen Dank für die ausführlichen Antworten und die links (werde ich mir heute abend auf jedenfall nochmal genauer ansehen) ;)
die sql statements habe ich mit php my admin getestet (mit dem querry-browser habe ich leider keine verbindung auf den debian-server herstellen können, kenne mich damit noch nicht aus)
leider funktionierte bisher leider noch keine bei der von dir vorgeschlagenen (sehe ich eigentlich auch keine fehler) und kriege diese meldung:
MySQL meldet: Dokumentation
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM tbl\_Mitarbeiter m INNER JOIN tbl\_Mitarb\_Abt ma ON m . id = ma . FS\_Mitar' at line 1