首页 > 代码库 > mysql----JOIN Quiz

mysql----JOIN Quiz

JOIN quiz

game
idmdatestadiumteam1team2
10018 June 2012National Stadium, WarsawPOLGRE
10028 June 2012Stadion Miejski (Wroclaw)RUSCZE
100312 June 2012Stadion Miejski (Wroclaw)GRECZE
100412 June 2012National Stadium, WarsawPOLRUS
...
goal
matchidteamidplayergtime
1001POLRobert Lewandowski17
1001GREDimitris Salpingidis51
1002RUSAlan Dzagoev15
1001RUSRoman Pavlyuchenko82
...
eteam
idteamnamecoach
POLPolandFranciszek Smuda
RUSRussiaDick Advocaat
CZECzech RepublicMichal Bilek
GREGreeceFernando Santos
...
1. You want to find the stadium where player ‘Dimitris Salpingidis‘ scored. Select the JOIN condition to use:
 eteam JOIN game ON (id=team1)
 eteam JOIN game ON (id=team2)
 eteam JOIN goal ON (teamid=id)
 game  JOIN goal ON (id=matchid)
 game  JOIN goal ON (team1=teamid OR team2=teamid)
2. You JOIN the tables goal and eteam in an SQL statement. Indicate the list of column names that may be used in the SELECT line:
 gtime, mdate, stadium, matchid
 mdate, stadium, id
 matchid, teamid, player, gtime, id, teamname, coach
 matchid, teamid, player, gtime, mdate, stadium, team1
 stadium, team1, team2
3. Select the code which shows players, their team and the amount of goals they scored against Greece(GRE).
SELECT player, teamid, COUNT(*)  FROM game JOIN goal ON matchid = id WHERE (team1 = "GRE" OR team2 = "GRE")   AND teamid != ‘GRE‘ GROUP BY player, teamid
SELECT player, teamid, COUNT(*)  FROM game JOIN goal ON matchid = id WHERE (team1 = "GRE") AND teamid != ‘GRE‘ GROUP BY player, teamid
SELECT player, teamid, COUNT(*)  FROM game JOIN goal ON matchid = id WHERE (team1 = "POL" OR team2 = "POL")   AND teamid != ‘POL‘ GROUP BY player, teamid
SELECT player, teamid, COUNT(*)  FROM game JOIN goal WITH matchid = id WHERE (team1 = "GRE" OR team2 = "GRE")   AND teamid != ‘GRE‘ GROUP BY player, teamid
SELECT player, teamid  FROM game JOIN goal ON matchid = id WHERE (team1 = "GRE" OR team2 = "GRE")   AND teamid != ‘GRE‘ GROUP BY player, teamid
4. Select the result that would be obtained from this code:
SELECT DISTINCT teamid, mdate  FROM goal JOIN game on (matchid=id) WHERE mdate = ‘9 June 2012‘
DEN9 June 2012
GER9 June 2012
DEN
GER
DEN9 June 2012
DEN9 June 2012
POL9 June 2012
RUS9 June 2012
GRE
CZE
POL
RUS
RUS9 June 2012
GRE9 June 2012
RUS9 June 2012
CZE9 June 2012
5. Select the code which would show the player and their team for those who have scored against Poland(POL) in National Stadium, Warsaw.
  SELECT DISTINCT player, teamid   FROM game JOIN goal ON matchid = id   WHERE stadium = ‘National Stadium, Warsaw‘  AND (team1 = ‘GER‘ OR team2 = ‘GER‘)   AND teamid != ‘GER‘
  SELECT DISTINCT player, teamid    FROM game JOIN goal ON matchid = id   WHERE stadium = ‘National Stadium, Warsaw‘  AND (team1 = ‘POL‘ OR team2 = ‘POL‘)   AND teamid != ‘POL‘
  SELECT DISTINCT player, teamid    FROM game JOIN goal ON matchid = id   WHERE stadium = ‘National Stadium, Warsaw‘ AND teamid != ‘POL‘
  SELECT DISTINCT player, teamid    FROM game JOIN goal ON matchid = id   WHERE stadium = ‘Stadion Miejski (Wroclaw)‘  AND (team1 = ‘POL‘ OR team2 = ‘POL‘)  AND teamid != ‘POL‘
  SELECT DISTINCT stadium, mdate    FROM game JOIN goal ON matchid = id   WHERE stadium = ‘National Stadium, Warsaw‘  AND (team1 = ‘POL‘ OR team2 = ‘POL‘)  AND teamid != ‘POL‘
6. Select the code which shows the player, their team and the time they scored, for players who have played in Stadion Miejski (Wroclaw) but not against Italy(ITA).
SELECT DISTINCT player, teamid, gtime  FROM game JOIN goal ON matchid = id WHERE stadium = ‘National Stadium, Warsaw‘   AND (( teamid = team2 AND team1 != ‘ITA‘) OR ( teamid = team1 AND team2 != ‘ITA‘))
SELECT DISTINCT player, teamid, gtime  FROM game JOIN goal ON matchid = id WHERE stadium = ‘Stadion Miejski (Wroclaw)‘   AND (( teamid = team2 AND team1 != ‘ESP‘) OR ( teamid = team1 AND team2 != ‘ESP‘))
SELECT DISTINCT player, teamid, gtime  FROM game JOIN goal ON matchid = id WHERE stadium = ‘Stadion Miejski (Wroclaw)‘   AND (( teamid = team2 AND team1 != ‘ITA‘) OR ( teamid = team1 AND team2 != ‘ITA‘))
SELECT DISTINCT teamid, gtime  FROM game JOIN goal ON matchid = id WHERE stadium = ‘Stadion Miejski (Wroclaw)‘   AND (( teamid = team2 AND team1 != ‘ITA‘) OR ( teamid = team1 AND team2 != ‘ITA‘))
SELECT DISTINCT player, teamid, gtime  FROM game JOIN goal ON matchid = id WHERE team1 != ‘ITA‘ AND team2 !=‘ITA‘
7. Select the result that would be obtained from this code:
SELECT teamname, COUNT(*)  FROM eteam JOIN goal ON teamid = id GROUP BY teamnameHAVING COUNT(*) < 3
2
2
1
2
Netherlands2
Poland2
Republic of Ireland1
Ukraine2
Netherlands
Poland
Republic of Ireland
Ukraine
Poland76
Republic of Ireland1

mysql----JOIN Quiz