- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是第一次使用 GTFS 结构,在查询时遇到了问题。我已将传输数据放入 mysql 表中,并可以自由查询它们,但我觉得我进行了太多的查询和循环以获取最简单的信息。
我想在单个查询中获得的是两个已知站点之间的所有出发时间和到达时间,可能由名称标识。
这是我目前所做的,它涉及一个查询,然后循环遍历每个 trip_id 以查找出发站和到达站信息 + 时间。
查询 1:
显示从特定起点站沿特定方向行驶的所有出发时间。结果将给出出发时间和 trip_id。
SELECT t.trip_id, trip_headsign, departure_time, direction_id, s.stop_name
FROM stops s, routes r, stop_times st, calendar c, trips t
WHERE departure_time > "00:00:00" and departure_time < "23:59:59"
AND r.route_id=1 and s.stop_id = 42
AND s.stop_id = st.stop_id
AND st.trip_id = t.trip_id
AND c.service_id = t.service_id
AND c.monday=1 and direction_id=1;
结果
+---------+---------------+----------------+--------------+-----------+
| trip_id | trip_headsign | departure_time | direction_id | stop_name |
+---------+---------------+----------------+--------------+-----------+
| 5671498 | Grand Central | 04:43:00 | 1 | Garrison |
| 5671501 | Grand Central | 05:13:00 | 1 | Garrison |
| 5671504 | Grand Central | 05:43:00 | 1 | Garrison |
| 5671506 | Grand Central | 06:08:00 | 1 | Garrison |
| 5671507 | Grand Central | 06:32:00 | 1 | Garrison |
| 5671513 | Grand Central | 06:53:00 | 1 | Garrison |
| 5671516 | Grand Central | 07:18:00 | 1 | Garrison |
| 5671519 | Grand Central | 07:40:00 | 1 | Garrison |
| 5671521 | Grand Central | 08:03:00 | 1 | Garrison |
| 5671523 | Grand Central | 08:32:00 | 1 | Garrison |
| 5671525 | Grand Central | 08:58:00 | 1 | Garrison |
| 5671526 | Grand Central | 09:27:00 | 1 | Garrison |
| 5671529 | Grand Central | 10:24:00 | 1 | Garrison |
| 5671532 | Grand Central | 11:24:00 | 1 | Garrison |
| 5671535 | Grand Central | 12:24:00 | 1 | Garrison |
| 5671537 | Grand Central | 13:24:00 | 1 | Garrison |
| 5671540 | Grand Central | 14:24:00 | 1 | Garrison |
| 5671542 | Grand Central | 15:24:00 | 1 | Garrison |
| 5671543 | Grand Central | 16:22:00 | 1 | Garrison |
| 5671547 | Grand Central | 17:24:00 | 1 | Garrison |
| 5671550 | Grand Central | 18:24:00 | 1 | Garrison |
| 5671552 | Grand Central | 19:26:00 | 1 | Garrison |
| 5671554 | Grand Central | 20:24:00 | 1 | Garrison |
| 5671556 | Grand Central | 21:24:00 | 1 | Garrison |
| 5671557 | Grand Central | 22:24:00 | 1 | Garrison |
| 5671559 | Croton-Harmon | 23:24:00 | 1 | Garrison |
+---------+---------------+----------------+--------------+-----------+
查询 2:
给我特定行程的所有停靠点及其到达时间,使用上次查询的 trip_id:
SELECT s.stop_id,stop_lat, stop_lon, stop_name, arrival_time, stop_sequence
FROM stop_times st JOIN stops s ON s.stop_id=st.stop_id
WHERE trip_id=5671521;
结果
+---------+-----------+------------+------------------+--------------+---------------+
| stop_id | stop_lat | stop_lon | stop_name | arrival_time | stop_sequence |
+---------+-----------+------------+------------------+--------------+---------------+
| 51 | 41.705839 | -73.937946 | Poughkeepsie | 07:31:00 | 1 |
| 49 | 41.587448 | -73.947226 | New Hamburg | 07:41:00 | 2 |
| 46 | 41.504007 | -73.984528 | Beacon | 07:50:00 | 3 |
| 43 | 41.415283 | -73.958090 | Cold Spring | 07:58:00 | 4 |
| 42 | 41.381780 | -73.947202 | Garrison | 08:03:00 | 5 |
| 40 | 41.332601 | -73.970426 | Manitou | 08:08:00 | 6 |
| 39 | 41.285962 | -73.930420 | Peekskill | 08:17:00 | 7 |
| 37 | 41.246259 | -73.921884 | Cortlandt | 08:22:00 | 8 |
| 33 | 41.189903 | -73.882394 | Croton-Harmon | 08:32:00 | 9 |
| 4 | 40.805157 | -73.939149 | Harlem-125th St. | 09:09:00 | 10 |
| 1 | 40.752998 | -73.977056 | Grand Central | 09:22:00 | 11 |
+---------+-----------+------------+------------------+--------------+---------------+
我真正想要的是两站之间的出发时间和到达时间列表,例如这个理论结果:
+---------+----------------+----------------+-----------+---------------+--------------+
| trip_id | departure_stop | departure_time | direction | arrival_stop | arrival_time |
+---------+----------------+----------------+-----------+---------------+--------------+
| 5671521 | Garrison | 08:03:00 | 1 | Grand Central | 09:22:00 |
| 5671522 | Garrison | 08:32:00 | 1 | Grand Central | 09:51:00 |
...etc...
最佳答案
简单地将数据连接在一起,连接到 stops
两次用于开始和结束 stop 并连接到 stop_times
两次用于开始和结束 stop_times,
我唯一不确定的是 direction_id
来自哪里。
试试下面的查询。
在查询的最后,您可以指定 start_s.stop_id
和 end_s.stop_id
,它们代表您正在查询数据的两个站点。
SELECT t.trip_id,
start_s.stop_name as departure_stop,
start_st.departure_time,
direction_id as direction,
end_s.stop_name as arrival_stop,
end_st.arrival_time
FROM
trips t INNER JOIN calendar c ON t.service_id = c.service_id
INNER JOIN routes r ON t.route_id = r.route_id
INNER JOIN stop_times start_st ON t.trip_id = start_st.trip_id
INNER JOIN stops start_s ON start_st.stop_id = start_s.stop_id
INNER JOIN stop_times end_st ON t.trip_id = end_st.trip_id
INNER JOIN stops end_s ON end_st.stop_id = end_s.stop_id
WHERE c.monday = 1
AND direction_id = 1
AND start_st.departure_time > "00:00:00" AND start_st.departure_time < "23:59:59"
AND r.route_id = 1
AND start_s.stop_id = 42
AND end_s.stop_id = 1
我尝试从 this link 中查找 GTFS 结构示例我在 direction_id
指定停止名称而不是 AND start_s.stop_id = 42 AND end_s.stop_id = 1
只需使用 AND start_s.stop_name = 'Garrison' AND end_s.stop_name = 'Grand Central'
关于mysql - GTFS 查询以列出两个站点名称之间的所有出发和到达时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21212588/
我正在尝试制作一个程序,显示飞机到达和起飞的时间表,然后要求用户在 C 中输入时间。然后程序将找到最接近输入时间的到达时间用户。问题是它没有按预期工作,并且给我一个错误的到达时间,甚至不接近输入的时间
我有一个不断填充新信息行的 Excel 表,其中一列与联系客户的日期(有时为空 - 无需输入日期)相关,如果在 10 内没有收到回复从那以后的几天,我们必须发送提醒,如果过了 17 天,我们必须取消订
实际到达很简单,标签进入接收器天线范围,但是偏离是造成问题的原因。 首先,我们了解一些有关设置的信息。 标签: 它们以433Mhz的速度工作,每1.5秒钟发送一次“心跳”,移动时进入传输突发模式,这种
我构建了这段代码来从 URL 获取 XML我使用了 AsyncTask,当到达 getInputStream() 点时,半身应用程序仍然崩溃 重点是我想从 url 获取 XML 作为字符串。 我尝试不
所以我有一个 TDBGrid,我的目的是搜索 DBGrid 的 Fieldname 并将其与我的编辑的 Text 属性进行比较,如果它们相等,则 我想将找到匹配项的整列写入列表框。 通过带有 fiel
我会写得非常简单,因为实际的修复并不比我不理解的实际设计重要。似乎一旦我的 @RequestBody 命中 @Controller,有关 subtype 的信息就会丢失。 假设我们有: class A
所以我正在做这个简单的动态编程问题,关于达到 n一次只能走 1 或 2 步。我知道答案基本上是一个斐波那契序列,答案是:达到n-2的步骤数+ 到达 n-1 的步数. T(n) = T(n-1) +
(function start (){ $('.bar').each(function(i){ var $bar = $(this); $(this).append('')
我有一个程序,我在启动它之前要求用户输入。 public static void main(String args[]) { String database = JOptionPane.sho
就是这样,我必须在提交按钮上有一张图片,但它根本没有出现。 我希望它看起来像这样: 现在看到我的是这样的,我不明白为什么它没有出现在页面上。 HTML CSS #sognu { bac
click here 点击后重定向至 xyz.com/#contact, 现在我想获得div #abc的顶部位置 //set the value as a variable, and remove t
here is a fiddle to know where I am starting from 我要解决的问题涉及对单个 html 文件的内容进行“分页”,以一种将它们一次锁定在一个部分中的方式。
是否可以在传递页面部分时运行 javascript 函数?我想要实现的是类似于 Twitter Bootstrap 的 scrollspy。 最佳答案 您可以使用 waypoints 插件: http
我有一个可以动态调整其大小的 iframe。我通过父页面上的发布消息和监听器解决了这个问题,因此每次 iframe 的内容发生变化时,iframe 的大小也会发生变化,并且永远不会有滚动条。 在 if
我试图让我的导航栏在到达我在网站下方设置的 anchor 时变得透明。 这是我的HTML Home About Logo W
我写了一个简单的程序来管理姓名列表(下面是程序的一部分)。我希望函数“choice()”结束并返回到 main()——从而结束程序——当用户对变量“option”的输入为 4 时。然而,choice(
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
代码片段在 while 循环后有一个 EOF,之后必须再次重新打开文件 - fopen 被重用。我的问题是是否有办法避免这种笨拙的 fopen 双重使用或以某种方式不使用 EOF? if (!(f=f
从这个页面: http://www.beta.inegi.org.mx/app/buscador/default.html?q=e15a61a 我正在尝试检索此网址: http://www.beta.
我使用维基百科的 API 来获取有关页面的信息。API 给我这样的 JSON: "query":{ "pages":{ "188791":{ "pageid":18879
我是一名优秀的程序员,十分优秀!