SQLZOO 答案6— JOIN

本文通过SQLZOO的实例,详细介绍了如何使用JOIN操作来查询涉及多个表格的数据,包括连接不同表格以获取球员信息、比赛详情、教练、入球时间和场地等。涵盖了LIKE操作符、条件过滤、COUNT()函数、GROUP BY语句以及CASE WHEN表达式的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.第一個例子列出球員姓氏為’Bender’的入球數據。 * 表示列出表格的全部欄位,簡化了寫matchid, teamid, player, gtime語句。

SELECT matchid, player
FROM goal
WHERE teamid = 'GER';

2.只顯示賽事1012的 id, stadium, team1, team2

SELECT id, stadium, team1, team2
FROM game
WHERE id = 1012;

3.修改它來顯示每一個德國入球的球員名,隊伍名,場館和日期
(思路:球员名和队伍名在goal表中,场馆和日期在game表中,将两个表连接(ON game.id = goal.matchid),最后限定条件是德国(where teamid = ‘GER’))

SELECT player, teamid, stadium, mdate
FROM goal AS a JOIN game AS b
ON(a.matchid = b.id)
WHERE teamid = 'GER';

4.列出球員名字叫Mario (player LIKE ‘Mario%’)有入球的 隊伍1 team1, 隊伍2 team2 和 球員名 player
(思路:team1 和 team2在game表中,player在goal中,将两表连接(ON game.id = goal.matchid),限定条件是球员名字叫Mario (player LIKE ‘Mario%’))

SELECT team1, team2, player
FROM goal JOIN game
ON (goal.matchid 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值