公交车路线查询系统后台数据库设计——查询算法

1. 公交车路线信息在数据库中的存储方式

显然,如果在数据库中简单的使用表bus_route(路线名,路线经过的站点,费用)来保存公交车路线的线 路信息,则很难使用查询语句实现乘车线路查询,因此,应该对线路的信息进行处理后再保存到数据库中 ,笔者使用的方法是用站点-路线关系表stop_route(站点,路线名,站点在路线中的位置)来存储公交车路 线,例如,如果有以下3条路线

R1:S1->S2->S3->S4->S5
R2:S6->S7->S2->S8
R3:S8->S9->S10

则对应的站点-路线关系表stop_route为

Stop Route Position
S1 R1 1
S2 R1 2
S3 R1 3
S4 R1 4
S5 R1 5
S6 R2 1
S7 R2 2
S2 R2 3
S8 R2 4
S8 R3 1
S9 R3 2
S10 R3 3

注:Stop为站点名,Route为路线名,Position为站点在路线中的位置

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索站点
, 数据库
, 查询
, 数据库设计
, lm3s9b92
, 信息
, java 算法 最优路线
, 查询算法
, 公交线路
路线
考试系统数据库设计、订单系统数据库设计、积分系统数据库设计、博客系统数据库设计、系统数据库设计,以便于您获取更多的相关知识。

时间: 2024-07-31 16:36:45

公交车路线查询系统后台数据库设计——查询算法的相关文章

公交车路线查询系统后台数据库设计——换乘算法改进与优化

在<查询算法>一文中已经实现了换乘算法,但是,使用存储过程InquiryT2查询从"东圃镇"到"车 陂路口"的乘车路线时,发现居然用了5分钟才查找出结果,这样的效率显然不适合实际应用.因此,有 必要对原有的换乘算法进行优化和改进.在本文中,将给出一种改进的换乘算法,相比原有的算法,改进 后的算法功能更强,效率更优. 1. "压缩"RouteT0 假设RouteT0有以下几行 如下图所示,当查询S1到S4的二次换乘路线时,将会产生3×2

公交车路线查询系统后台数据库设计——关联地名和站点

在<公交车路线查询系统后台数据库设计--查询算法>一文中,已经实现了查询站点到站点的路线 查询算法,但是,现实中用户不一定使用站点进行查询,而是使用地名.因此,公交车查询系统数据库必 需记录地名与站点的对应关系,在查询时将地名映射为站点.根据实际情况,某一地点附近通常有几个站 点,因此,地名与站点之间是多对多的关系.显然,只需创建一个地名站点关系表stop_spot(Stop,Spot) 用于储存这个关系即可.数据库关系图如下: 注: Route:路线表 Stop:站点表 Spot:地名表 s

公交车路线查询系统后台数据库设计——引入步行路线

在<查询算法>和<关联地名和站点>两篇文章中,已经实现了通过地名或站点进行路线查询的算法 ,但是在现实中,从起点到终点不一定全程都是乘车,例如,有以下3条路线: R1: S1->S2->S3->S4->S5 R2: S6->S7->S2->S8 R3: S8->S9->S10 假如现在要从站点S1到S7,如果用Inquiry查询路线,显然没有合适的乘车方案.但是S2和S7相距仅仅 一个站的距离,可以用步行代替,因此可以先从S1乘

数据库建模-业务系统系统权限数据库设计问题

问题描述 业务系统系统权限数据库设计问题 本人菜鸟,最近公司正在准备一个新项目,在权限部分的数据库设计上出现了问题. 之前框架的权限部分是基于角色的权限管理,角色与模块和操作多对多关联,关联信息存在中间表里,但是这样做会使中间表数据量非常大,每次登录都去关联各个表查询. 现在还有一个新的方法,就是取消掉模块和操作表,取而代之的是把各个角色的模块和操作权限直接用一条JSON保存到角色表的字段里,这样每次登录只查询角色表把权限JSON拿到后台处理就行了,查询速度是快了,但是如果模块和操作变动的时候就

新闻-教务网站信息发布系统的数据库设计

问题描述 教务网站信息发布系统的数据库设计 教务网站信息发布系统需求分析 一.新闻发布 普通富文本编辑器(百度UEditor等).格式字符经过转义以后储存在数据库中. 允许上传图片.图片采用文件格式储存,不用数据库储存. 允许上传附件(一个),限制格式. 允许自定义排序,采用排序号. 允许设置所属专题. 允许设置标题链接:设置后,点击不进入内容页面,直接进入设置的链接. 置顶方式:采用排序号. 二.栏目管理 只有超级管理员具有栏目管理权限. 新闻最多分为三级栏目.(或者以设置父栏目的形式实现多级

cms查询系统(三)查询demo体验

安装相应的jar包到maven仓库 安装2个项目 有2个项目的jar包需要安装,分别是: search-sqlparams-1.3.0.jar 主要用于查询参数的解析 search-core-1.3.0.jar 整体的查询流程体系,需要使用上述参数解析包 上述两个项目地址分别如下: search-sqlparams search-core 以search-sqlparams-1.3.0.jar为例来说下安装步骤: 第一步:fork search-sqlparams 项目(这两个项目都是maven

多语言系统的数据库设计

之前做的项目涉及到中国大陆和纽伦新港的用户使用,也就需要做成一个多语言的系统,现在总结下其中一些经验和思考. 首先我们需要确认我们要做的系统,多语言到底是要做多少种语言,以后会不会要求增加更多的语言.比如我们做一个给中国大陆和纽伦新港使用的系统,可以确定的语言就是简体中文.繁体中文和英语,而且可以确定以后也不会增加语言.确定以后是否需要增加语言这一点很重要,决定了我们在数据库设计时,是否需要考虑多语上的扩展性. 先说下在数据库设计时,可以有以下方案实现多语: 一.为每个多语字段建立对应语言的字段

求产品销售系统的数据库设计

问题描述 本人毕业设计题目:产品销售系统.系统要求:系统采用B/S结构的MVC模式,对用户浏览的相关产品提供相关度推荐链接以及相关产品销售情况等介绍.实现商品的各项销售管理功能,包括用户登录,产品分类,价格查询,结算等模块等.求解数据库的设计.

SQL查询日志 查看数据库历史查询记录的方法_mssql2005

好吧,到数据库日志中去找找,通过时间.关键字批配..能想到的全用上吧. 首先假定你执行过它.没有?好吧,要么它太过简单,要么你太过不简单.. 复制代码 代码如下: SELECT TOP 1000 --创建时间 QS.creation_time, --查询语句 SUBSTRING(ST.text,(QS.statement_start_offset/2)+1, ((CASE QS.statement_end_offset WHEN -1 THEN DATALENGTH(st.text) ELSE