Kaptein Snus Skrevet 20. november 2013 Del Skrevet 20. november 2013 (endret) Heisann! Jeg sitter å skal lage en database over kamper og resultater for håndballaget mitt. Tabellene ser slik ut: - Game (Hvor alle kampene ligger) - ... - team_home (int som ref til team_id) - team_gone (int som ref til team_id) - arena (int som ref til arena_id) - ... - Team (Alle lagene) - team_id - name - Arena (Alle hallene) - arena_id - name Som dere kan se er det i Game tabellen to felt som referer til team_id (hver sin så klart). Jeg sliter med å bygge opp en spørring for å hente ut navnet på de to lagene. Navnet på arena er forsåvidt greit da gjør jeg bare slik: SELECT game.*, arena.name AS arena_name FROM game, arena WHERE game.arena = arena.arena_id; Men skjønner ikke helt hvordan jeg skal få til å spørre på Team tabellen to ganger. Har prøvd: SELECT game.team_home AS home, arena.name AS arena_name, game.team_gone AS gone FROM team, arena, game WHERE game.team_gone=team.team_id AND game.team_home=team.team_id AND game.arena=arena.arena_id; Uten at det returnerer noe.. Har på følelsen at det har noe med joins å gjøre, men skjønner ikke helt konseptet og hvor jeg evt skal putte det inn. Her er en SQLFiddle: http://www.sqlfiddle.com/#!2/701ce/6 Endret 20. november 2013 av Lek1 Lenke til kommentar
ZeRKoX Skrevet 20. november 2013 Del Skrevet 20. november 2013 Du kan for eksempel prøve noe slikt: SELECT g.*, a.name, t1.name, t2.name FROM game g INNER JOIN team t1 ON t1.team_id = g.team_home INNER JOIN team t2 ON t2.team_id = g.team_gone 1 Lenke til kommentar
Kaptein Snus Skrevet 20. november 2013 Forfatter Del Skrevet 20. november 2013 Hjertelig takk! Løste problemet! Lenke til kommentar
ZeRKoX Skrevet 20. november 2013 Del Skrevet 20. november 2013 Kan forsåvidt nevne at det som oftest er dårlig skikk å bruke "SELECT *". Du bør heller liste opp feltene du har bruk for, så blir det mindre trafikk mellom webtjener og databasetjener, og du er ikke så bundet opp til database-layouten. Det har lite å bety på små nettsteder, men det skader jo ikke å få gode vaner. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå