sql练习(行程和路线)

这段SQL查询旨在确定在2013年10月1日至3日期间,未被禁止的用户(乘客和司机)的行程取消率。取消率是通过计算被取消的行程(由司机或客户取消)数量除以总行程数量得出的,结果保留两位小数。查询结果展示每日的取消率。
摘要由CSDN通过智能技术生成

表:Trips

+-------------+----------+
| Column Name | Type     |
+-------------+----------+
| Id          | int      |
| Client_Id   | int      |
| Driver_Id   | int      |
| City_Id     | int      |
| Status      | enum     |
| Request_at  | date     |     
+-------------+----------+
Id 是这张表的主键。
这张表中存所有出租车的行程信息。每段行程有唯一 Id ,其中 Client_Id 和 Driver_Id 是 Users 表中 Users_Id 的外键。
Status 是一个表示行程状态的枚举类型,枚举成员为(‘completed’, ‘cancelled_by_driver’, ‘cancelled_by_client’) 。

 

表:Users

+-------------+----------+
| Column Name | Type     |
+-------------+----------+
| Users_Id    | int      |
| Banned      | enum     |
| Role        | enum     |
+-------------+----------+
Users_Id 是这张表的主键。
这张表中存所有用户,每个用户都有一个唯一的 Users_Id ,Role 是一个表示用户身份的枚举类型&

公交线路查询系统的数据库设计 【摘 要】随着城市规划建设的发展,城市人口数量的持续激增,城市公交由于其价格低廉、 安全稳定、乘坐方便、线路数量多、环境污染小等特征,成为了城市人们出行的首选交 通方式。本文针对公交线路查询系统,提出了系统数据库的设计方案,方便城市人们出 行之前准确查询公交线路。 【关键词】公交线路线路查询;数据库设计 1 引言 随着城市规划建设的持续展开,公交线路发展速度越来越快,城市公交系统规模日益 复杂。由于城市公交数量的增多,进而带来了道路拥堵、环境污染和交通事故频发的问 题。由此,公共交通工具在为城市人们提供便捷交通的同时,也出现了很多严重困扰城 市发展的问题。城市公交线路变换频发、信息量丰富,如果人们只能利用传统的公交线 路图查阅方式来获取公交线路信息,难以确保公交线路信息的准确性,无法掌握最优的 乘车路线。因此,本文基于公交线路查询系统,提出了数据库的设计方案,从根本上解 决了公交线路查询的弊端问题,便于人们在出现之前获取到最优的路线信息,节约了人 们的出行时间,又降低了城市公交的运输压力,有利于城市环境污染的治理。 2 公交线路查询系统数据库E-R图设计 本文在基于公交线路查询系统的基础上,给出了系统数据库的设计方案,选择SQL Server作为系统后台数据库开发工具,SQL Server功能完善,操作简单,安全性好,能够防止非法分子恶意入侵数据库,适合用于 查询系统数据库的开发。在公交线路查询系统数据库设计过程中,要针对数据字典中的 数据信息存储形式进行分析,得到系统数据的关系模式。因此,本文选用E- R图来实现数据库结构分析,公交线路查询系统数据库E-R图如图1、图2、图3所示: 图1 线路属性实体 图2 公交线路实体 图3 管理员实体 3 公交线路查询系统数据库表设计 3.1 公交站台表 公交站台表负责记录公交站台的相关属性,根据系统开发需求,每个公交站台最多可 以容纳8条公交线路同时通过,为了确保后期系统的良好扩展,本表设计为可以容纳20条 公交线路。公交站台线路数据库格式是:线路1ID、线路2ID……,#表示线路结束。 3.2 公交线路表 为了保证系统后期扩展应用,公交线路站台设计为50个站点,实际公交线路的站点数 量为28个,公交所经站台的数据库格式为:站台1ID、站台2ID……,#表示站台结束。如果 分段标记为0,代表公交按照统一价格收费;如果分段标记设置为1,代表公交采用分段 计价方式。 3.3 操作人员表 操作人员数据库表对操作人员的权限进行了规定,0代表操作人员没有权限,1代表操 作人员具有权限。其中,位数与操作人员的权限关系为:1、公交线路查询;2、公交线 路增加;3、公交线路修改;4、公交线路删除;5、增加公交站台;6、修改公交站台; 7、删除公交站台;8、发布公交线路通知;9、发布公交站台通知,同时保留剩余的7位 数。 3.4 操作日志表 操作日志数据库表中记录了操作人员的全部操作记录和操作时间,用于查询历史操作 记录,分清每名操作人员的工作责任。 4 数据库的完整性和安全性设计 4.1 数据库完整性设计 数据库完整性指的是要保证系统数据库中的数据正确和相容。DBMS数据库管理系统采 用相应机制来检测数据库中存储的数据信息是否能够满足完整性的规定条件,其规定的 条件是语义的体现。公交线路查询系统的数据库设计中,定义了数据库表之间的联系方 式,有助于实现数据库的完整性,能够在正常使用中控制数据库的完整性。 4.2 数据库安全性设计 数据库安全性指的是能够确保数据库不被非法入侵者恶意破坏,造成数据库数据信息 的丢失、篡改和泄露。公交线路查询系统中存储了海量数据信息,可以为不同用户提供 统一的资源共享,因此,数据库安全性设计更加重要,本文采用了用户授权、身份认证 和数据加密的方式,确保数据库中的重要信息不被非法人员恶意窃取。 5 数据库设计相关说明 由于每条公交线路都拥有多个公交站台,每个公交站台又同属于多条公交线路,因此 ,数据库设计中不能采用外键机制来确保公交线路(ALL LINES)和公交站台(ALL STATIONS)的正确性。本文选用了添加确认功能模块的方式,由系统后台程序负责实现 外键机制。 (1)当增加、修改和删除公交线路数据库表中的公交站台(ALL STAIONS)字段时,需要调用confirm Station模块;对公交站台数据库表进行查询时,遇到","则继续查询,遇到"#"表示查 询结束,一旦发现存在不合法的公交站台DI,要立刻拒绝操作并给出提示,公交站台修 改流程如图4所示: (2)同理,如果需要对公交线路数据库表(ALL LINES)进行修改时,操作流程如下: 图4 公交站台修改流程图 6 结论 综上所述,本文基于公交线路查询系统提出了系统数据库的设
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值