sql查询两个时间段是否在数据库里的时间段

dongshaohua123 2012-02-04 06:10:39

我的文本框里的时间段是:14:00,15:00,一直到23:00,有两个文本,时间段是一样的,数据库的时间段未知,当用户输入的时间段和数据的时间有冲突,就会查询出来

例如:数据库里有 14:00 到 18:00 ,我从文本框输入15:00到16:00,这个时间段已经包含在数据库的时间段了,但是怎么查出来,又例如:14:00到15:00
...全文
349 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yanyuchonglou 2012-02-06
  • 打赏
  • 举报
回复
这不是难事吧,大于起点小于终点就行了。

提问要说详细点,不要让大家猜了。
dongshaohua123 2012-02-06
  • 打赏
  • 举报
回复
我自己写了个很简单的,但是却能实现任何时间查询的需求,各位看看
select * from sys_BookingDetail where bookingDetail_StarDate='2012/1/13' and convert(Datetime,bookingDetail_StarTime)>=convert(Datetime,'14:00')
and convert(Datetime,bookingDetail_EndTime)<=convert(Datetime,'18:00')
AcHerat 2012-02-06
  • 打赏
  • 举报
回复

declare @time datetime
set @time = '2012-02-06 17:31:23'

select case when datepart(hh,@time) between 12 and 18 then 1 else 0 end flag


查询的时候只需要在where条件里把两个文本的时间区间放进去。
dongshaohua123 2012-02-06
  • 打赏
  • 举报
回复
maco_wang
(☆叶子☆)
我加你QQ,截图来给你看,你QQ多少
叶子 2012-02-04
  • 打赏
  • 举报
回复
给出表结构,测试数据,及想要的结果
阿呆哥 2012-02-04
  • 打赏
  • 举报
回复
强悍。
dongshaohua123 2012-02-04
  • 打赏
  • 举报
回复
可否完整点?例如select * ......
叶子 2012-02-04
  • 打赏
  • 举报
回复

/*
a1 |-----------------| a2
b1|--------------------|b2
*/

--例如上面两个线段
--当
b1 between a1 and a2 or b2 between a1 and a2
--时一定有交集

--外加
b1<a1 and b2>a2
--时有交集

22,207

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧