- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试过了http://sqlzoo.net/wiki/Self_join
#10 的自助加入 session
# 10 : 查找涉及从 Craiglockhart 到 Sighthill 的两辆公共(public)汽车的路线。显示公共(public)汽车号。和第一辆公共(public)汽车的公司,换乘站的名称,以及公共(public)汽车号。和第二辆公共(public)汽车的公司。
这是我的代码:
SELECT a.num, a.company,
trans1.name , c.num, c.company
FROM route a JOIN route b
ON (a.company = b.company AND a.num = b.num)
JOIN ( route c JOIN route d ON (c.company = d.company AND c.num= d.num))
JOIN stops start ON (a.stop = start.id)
JOIN stops trans1 ON (b.stop = trans1.id)
JOIN stops trans2 ON (c.stop = trans2.id)
JOIN stops end ON (d.stop = end.id)
WHERE start.name = 'Craiglockhart' AND end.name = 'Sighthill'
AND trans1.name = trans2.name
ORDER BY a.num ASC , trans1.name
我知道输出会给你多行,比如:
4 LRT London Road 35 LRT
4 LRT London Road 34 LRT
4 LRT London Road 35 LRT
4 LRT London Road 34 LRT
4 LRT London Road C5 SMT
你想要的地方:
4 LRT London Road 34 LRT
4 LRT London Road 35 LRT
4 LRT London Road 65 LRT
4 LRT London Road C5 SMT
还有一个错误,当我尝试 ASC
时,a.num
的顺序不起作用。此外,当我将 DISTINCT
放在 c.num
之前时,它会显示错误。不能使用 group by 因为它给你的行太少。
有专家可以帮忙吗?
最佳答案
我对这个问题的解决方案:我将问题分为两个。
First subquery will be the table S(Start), which will get all the routes that start from 'Craiglockhart' Second subquery will be the table E(End), which will get all the routes that start from 'Sighthill'
现在表 S 和 E 都有公共(public)路由,我通过使用每个表的 ID 加入子查询来获得所有这些公共(public)路由。由于有重复的路线(相同:S.num、S.company、stops.name、E.num、E.company)我使用了 DISTINCT。
SELECT DISTINCT S.num, S.company, stops.name, E.num, E.company
FROM
(SELECT a.company, a.num, b.stop
FROM route a JOIN route b ON (a.company=b.company AND a.num=b.num)
WHERE a.stop=(SELECT id FROM stops WHERE name= 'Craiglockhart')
)S
JOIN
(SELECT a.company, a.num, b.stop
FROM route a JOIN route b ON (a.company=b.company AND a.num=b.num)
WHERE a.stop=(SELECT id FROM stops WHERE name= 'Sighthill')
)E
ON (S.stop = E.stop)
JOIN stops ON(stops.id = S.stop)
关于mysql - sqlzoo 上的自连接教程 #10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24834948/
我发现了一个练习 sql 的好网站 - http://sqlzoo.net .我的 sql 非常弱,这就是为什么我想通过在线练习来改进它。但是我有一个我无法解决的问题。你能帮我一下吗? 3a。查找出现
我尝试按照提示使用自连接两次,但失败了。 Find the routes involving two buses that can go from Craiglockhart to Sighthill
有人可以告诉我为什么我的解决方案无法应对这个挑战吗? http://sqlzoo.net/wiki/More_JOIN_operations 15。列出 1978 年上映的电影,先按 Actor 人数
理科物理化学后不知道名字怎么排序! Question: The expression subject IN ('Chemistry','Physics') can be used as a value
我正在研究 SQLZoo 的一个 hard assessment problems并使用 MySQL。可以找到预订数据和数据库描述here . Check out per floor. The fir
该表包含三列:年份、获奖者、主题。问题是:哪一年颁发了物理奖而没有颁发化学奖。我尝试了以下代码并收到语法错误。任何帮助将不胜感激! SELECT DISTINCT yr FROM nobel WHER
SQLzoo 在 MySQL 的更多连接操作下存在问题。问的问题是 列出 1978 年上映的电影,按 Actor 人数排序。 给出的表格如下,ord值为0或1,1为star角色。 movie | ac
我试过了http://sqlzoo.net/wiki/Self_join #10 的自助加入 session # 10 : 查找涉及从 Craiglockhart 到 Sighthill 的两辆公共(
全部: 我现在正在学习 SQL,但卡在 #7 的 http://sqlzoo.net/wiki/SELECT_names Bahamas has three a - who else? Find th
我目前正在做本教程( http://sqlzoo.net/wiki/SELECT_within_SELECT_Tutorial ),但我无法回答问题 8 : 一些国家的人口是其邻国(同一大陆)的三倍以
我无法正确回答以下问题 Show the years in which three prizes were given for Physics. 我编写了以下脚本,但它返回错误。 SELECT yr,
http://sqlzoo.net/wiki/SELECT_from_WORLD_Tutorial#All_the_vowels 赤道几内亚和多米尼加共和国拥有名称中的所有元音 (a e i o u)
我一直在研究 SQLzoo 问题,但在 JOIN 教程问题 #13 中的最后一个问题上遇到了麻烦 - 列出每场比赛以及每个团队的得分,如图所示。 链接:http://sqlzoo.net/wiki/T
我正在解决 SQLZOO 的练习问题,但不确定为什么我尝试的解决方案不起作用,因为它对我来说很有意义。 这是表格的格式:: -------------------------------------
我不太确定如何做这个问题,我知道我需要使用之前用#7 教授的方法,但我不知道如何按字母顺序排列,如果它是一个数字,那就很容易了。 也许使用LIKE或BETWEEN子句? SELECT continen
链接是http://sqlzoo.net/wiki/The_JOIN_operation .第 13 号问题。现在我可以列出所有比赛,只要至少有一个目标代码: SELECT mdate,
problem statement是: Put the continents right... Oceania becomes Australasia Countries in Eurasia and
我试图解决 http://sqlzoo.net/wiki/More_JOIN_operations 下的问题 15 我不明白为什么我的查询是错误的,即使我的输出就像它应该的那样。 这是我的查询: SE
https://sqlzoo.net/wiki/SELECT_within_SELECT_Tutorial 的问题 7 “找到每个大陆中最大的国家(按面积),显示大陆、名称和面积:” 我不明白为什么
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎与 help center 中定义的范围内的编程无关。 . 关闭 9 年前。 Improv
我是一名优秀的程序员,十分优秀!