发生时间期间内用药情况

hehong123 2014-04-08 12:49:02
患者 药品序号 开始时间 结束时间 借用天数
16327-1 3454 2013-01-21 2013-01-21 0
16327-1 3454 2013-01-21 2013-01-27 6 符合27号
16327-1 3552 2013-01-21 2013-01-28 7 符合27号
16327-1 59 2013-01-26 2013-01-28 2 符合27号
16327-1 87 2013-01-27 2013-01-28 1 符合27号
16327-1 3552 2013-01-28 2013-02-25 28

怎样取发生在 27 号这一天用了四种药
...全文
94 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
快溜 2014-04-08
  • 打赏
  • 举报
回复
select * from tb where '2013-01-27' between 开始时间 and 结束时间
hehong123 2014-04-08
  • 打赏
  • 举报
回复
oracle 有个connect by level 通过这个可以递归,但SQLSERVER2000没有
hehong123 2014-04-08
  • 打赏
  • 举报
回复
如果一个一个代参数效率太低了
KeepSayingNo 2014-04-08
  • 打赏
  • 举报
回复

declare @sql varchar(max)
declare @time varchar(100)
set @sql = 'select * from tb where '+@time+' between [开始时间] and p结束时间]' 
exec(@sql)
hehong123 2014-04-08
  • 打赏
  • 举报
回复
相当于时间交集
hehong123 2014-04-08
  • 打赏
  • 举报
回复
'2013-01-27' 这个不是固定, 现在是人工肉眼看得出27号,才把哪个时间代进去,

22,210

社区成员

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

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