MySQL Inner Join

jannicars

Erfahrenes Mitglied
MySQL Inner Join - Zeilenspalte von anderer Tabelle nehmen

Hallo,

Ich habe ein kleines problem mit Inner Join.

Als erstes mal die 2 Tabellen:
chat:
id,
user_id,
content

user:


Mein Query:
SELECT c.id, c.user_id, c.content, u.id, u.name FROM chat c INNER JOIN user u ON c.user_id=u.id ORDER BY c.id

Der Query geht auch einwandfrei, nur möchte ich die id aus der Tabelle chat haben und nicht user.
Phpmyadmin zeigt mir die Chat id an, im script wird aber die id des Users ausgegeben.
Ich möchte halt, dass die id des Chats ausgegeben wird.
Wie kann ich dies ändern?
 
Zuletzt bearbeitet:
Du hast die id-Felder
c.id
c.userid
u.id

Also hast du 2 mal den Namen id für ein Feld. Wenn du nun mit PHP auf dieses Resultat zugreifst, dann wird das erste id-Feld ausgewählt und das ist in deinem Fall c.id und nicht u.id.
Du hast aber bereits das Feld c.user_id dass du auslesen kannst. Ansonsten müsstest du mir Aliasen arbeiten (ist eigentlich sauberer)

SQL:
SELECT 
	c.id AS cid, 
	c.user_id, 
	c.content, 
	u.id AS uid, 
	u.name 
FROM 
	chat c 
	INNER JOIN user u 
		ON c.user_id=u.id 
ORDER BY c.id;
 
Zuletzt bearbeitet von einem Moderator:

Neue Beiträge

Zurück