SQL INNER JOIN flera referenser till en tabell

Trädvy Permalänk
Medlem
Plats
Sverige
Registrerad
Jan 2004

SQL INNER JOIN flera referenser till en tabell

Hej, ska försöka mitt problem.

Har två tabeller i min MySQL-databas

user_table:
id
username

object_table:
id
object_name
skapar_id
givar_id

Här är sedan SQL-frågan jag vill ställa:

SELECT
`object_table`.`id` AS `id`,
`object_table`.`object_name` AS `object_name`,
`user_table`.`username` AS `object_skapare`,
`user_table`.`username` AS `object_givare`
FROM `object_table`
INNER JOIN `user_table` ON `object_table`.`skapar_id`=`user_table`.`id`,
INNER JOIN `user_table` ON `object_table`.`givar_id` = `user_table`.`id`

Resultatet ska alltså bli att jag får fram alla poster ur "object_table" och då kan få ut vem som är skaparen till varje objekt och samtidigt vem som ska få objektet.

Vill helst inte ställa mer än en SQL-fråga.

Hoppas ni förstår vad jag menar.

Tack på svar.

I been away since 1945

Corsair TX 650W | ASRock P67 Extreme 4 | Intel Core i5 2500K 3,3GHZ | Corsair 2x4GB DDR3 | Gigabyte GeForce GTX 560 Ti OC 1GB | Corsair SSD Force Series 60GB

Trädvy Permalänk
Legendarisk
Hedersmedlem
Plats
::1
Registrerad
Dec 2002

SELECT
`object_table`.`id` AS `id`,
`object_table`.`object_name` AS `object_name`,
`skapare`.`username` AS `object_skapare`,
`givare`.`username` AS `object_givare`
FROM `object_table`
INNER JOIN `user_table` AS `skapare` ON `object_table`.`skapar_id`=`skapare`.`id`,
INNER JOIN `user_table` AS `givare` ON `object_table`.`givar_id` = `givare`.`id`

Abstractions all the way down.

Trädvy Permalänk
Medlem
Plats
Sverige
Registrerad
Jan 2004

Fan vad nice. Visste inte att man kunde använda AS i INNER JOIN också.

Tack för hjälpen

I been away since 1945

Corsair TX 650W | ASRock P67 Extreme 4 | Intel Core i5 2500K 3,3GHZ | Corsair 2x4GB DDR3 | Gigabyte GeForce GTX 560 Ti OC 1GB | Corsair SSD Force Series 60GB