爱易网
IT新闻
IT新闻
爱易资讯
网站搭建
云虚拟主机教程
云服务器教程
Apache教程
IIS教程
Nginx教程
网站策划
站长文章
推广教程
淘宝客教程
网页设计
HTML教程
XHTML教程
CSS教程
HTML5教程
CSS3教程
JavaSript基础
JQuery教程
Node.js教程
前端技术
Ajax教程
Js特效
Xml教程
平面设计
页面UI设计
photoshop教程
程序开发
AI人工智能
Asp教程
Php教程
Asp.Net教程
Net Core教程
C#教程
Java教程
Jsp教程
开发技术
微信小程序教程
Uniapp开发教程
微信公众号开发
Andriod教程
IOS教程
DOS教程
Python教程
Docker教程
Windows Container教程
数据库
MSSQL教程
MySQL教程
Redis教程
Access教程
Oracle教程
数据库教程
操作系统
Linux教程
Windows教程
MAC教程
Cisco教程
交换机教程
防火墙教程
搜索
爱易网页
数据库教程
如何查询会议室的可用时间段
如何查询会议室的可用时间段
日期:2014-05-16 浏览次数:20550 次
怎么查询会议室的可用时间段
请看8楼10楼的说明
http://topic.csdn.net/u/20110518/22/25bdae13-b21d-4dbb-97ea-e57ac9fad97c.html
1 楼 adria20092 2011-05-23
数据库里有已经过期的记录需要排除掉,当会议记录的结束时间小于当前系统时间的需要排除,然后如果当前有开始时间小于当前系统时间,而结束时间大于等于当前系统时间的需要在结束时间的基础上加到整位的5或10开始算分钟。如下面的我现在的系统时间是2011-5-20 13:39:00
假设下面的是系统当前的会议室已定记录
开始时间 结束时间 会议室名称
1.2011-05-17 09:00:00--2011-05-20 10:00:00 10
2.2011-05-20 13:00:00--2011-05-20 18:00:00 10
3.2011-05-25 09:30:00--2011-05-25 10:00:00 10
4.2011-05-25 11:00:00--2011-05-25 12:00:00 10
5.2011-05-25 09:30:00--2011-05-25 10:00:00 14
假设会议室记录有上面的4条记录,我现在需要过滤上面的记录,
1,首先排除掉第一条记录,因为它的结束时间小于当前的系统时间
2.看第二条记录,它的开始时间小于当前的系统时间,而结束时间又大于当前的系统时间,当么我们当前计算显示的第一条记录就是当前系统时间(2011-5-20 13:39:00),因为当前的系统时间不是整位的5或10,所以这里我们要加到10,也就是判断其分钟的个位是小于5还是大于5的问题,记录结果为
2011-5-20 13:40:00--2011-05-20 17:55:00
3.第三条记录无论是开始时间还是结束时间都大于当前的系统时间,当前第二记录的开始时间是第一条记录的结束时间加5,规则同2描述一样,所以记录结果为
2011-05-20 18:05:00--2011-05-25 09:25:00
4.第四条记录同3结果为
2011-05-25 10:05:00--2011-05-25 10:55:00
5.最后一条记录,因为其开始时间大小当前系统时间,而我们的结果时间是固定的(2099-01-01 23:55:00)所以最后一条记录的结果也出来了:
2011-05-25 12:00:00--2099-01-01 23:55:00
所以最终的结果就是下面的记录,根据会议室名称查询数据:
开始时间 结束时间 会议室名称
1.2011-5-20 13:40:00--2011-05-20 17:55:00 10
2.2011-05-20 18:05:00--2011-05-25 09:25:00 10
3.2011-05-25 10:05:00--2011-05-25 10:55:00 10
4.2011-05-25 12:00:00--2099-01-01 23:55:00 10
我这样讲应该明白我的意思了吧?
2 楼 adria20092 2011-05-23
帮忙用sql server2000实现一下
3 楼 ray_linn 2011-05-23
一般都是用exchange server来book会议室。。。
4 楼 adria20092 2011-05-23
要怎么弄,我只要一条sql查询出来,这个不能实现吗?
上一篇: CCNP_route札记6 关于OSPF中的hello和DBD顺序
下一篇: WIN7上安装Oracle 10g 的详细过程
免责声明:
本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
相关资料
更多>
SQL Server 7.0与以前的版本相比,安全模式中最重要的改变_Sql2000安全漏洞_MSSQL教程
oracle批改密码、添加用户及授权
不改平安级别,上传前,在客户端判别图片文件大小
将SqlServer数据库变换Sqlite的工具
关于将数据库中的数据返回list的有关问题
MySQL的数据库的名字是不是区分大小写
Union all 跟 Union
Hibernate主键生成对策类型的使用说明[hibernate generator strategy]
mysql 两种储存引擎 MyISAM 和InnoDB
推荐阅读
更多>
ORACLE 11G DATAGUARD保护模式设立详解
SQL语法参考手册(转)
gdb运行时组合汇编堆栈分析
DB2中的sequence定义跟使用
JDBC基础-setFetchSize步骤
[每天一题] 11gOCP 1z0-053 :2013-10-8 attribute for an individual disk group.73
OLTP跟OLAP
4.支配数据库
删除数据表中的重复记载
Grails的数据库有关开发
memcachedb施用指南一【转】
利用rman进展异机还原(目录不同)
再则 Oracle RAC services
DBA必备:MySQL数据库常用操作和技巧
Oracle中游标(Cursor)引见
怎么在Android应用中使用已有的Sqlite数据库
oracle学习札记05_oracle创建数据库
nvarchar varchar的差异是存储方式不同
剔除Oracle 10gR2 RAC节点(原创)
Linux环境停 php+mysql远程连接数据库,开启3306端口