sql - Query with multi tables -


i have 4 tables:

  • characters
  • arena_team
  • arena_table_member
  • arena_team_stats.

characters table has guid, name

arena_team table has arenateamid, name, type

arena_table_member table has guid(this same in characters table), arenateamid

arena_team_stats table has arenateamid, rating, wins, wins2, played

how list of arena teams character is? tried:

$result=mysql_query("select            characters.guid            , characters.name            , arena_team.arenateamid            , arena_team.name            , arena_team_stats.rating            , arena_team_stats.wins            , arena_team_stats.wins2            , arena_team_stats.played            , arena_team.type     characters            , arena_team_stats            , arena_team      characters.name '%$q%'      , arena_team.arenateamid = arena_team_stats.arenateamid      order arena_team_stats.rating desc")  or die(mysql_error()); 

but returns arena teams in arena_team table.

looks you're missing join. it's easier read table aliases , formatted:

    select c.guid          , c.name          , at.arenateamid          , at.name          , at.type          , ats.rating          , ats.wins          , ats.wins2           , ats.played       characters c inner join arena_team_member atm on atm.guid = c.guid inner join arena_team @ on at.arenateamid = atm.arenateamid inner join arena_team_stats ats on ats.arenateamid = at.arenateamid      c.name '%$q%'   order ats.rating desc 

Comments

Popular posts from this blog

c++ - How do I get a multi line tooltip in MFC -

asp.net - In javascript how to find the height and width -

c# - DataTable to EnumerableRowCollection -