搜索
编程论坛
→
数据库技术
→
『 SQL Server论坛 』
→ 在sql server中,要求在一个10000条医院就诊记录中,将两个月内出现6次的和六个月出现8次的病人输出到单独的两个表格中。求算法
标题:
在sql server中,要求在一个10000条医院就诊记录中,将两个月内出现6次的和 ...
只看楼主
png
等 级:
蝙蝠侠
威 望:
4
帖 子:126
专家分:880
注 册:2010-10-6
第
11
楼
得分:0
回复 10楼 gaointer
是不是可以理解成,任意连续60天内同一病人出现的次数至少6次哪?
2012-06-06 23:47
gaointer
等 级:
新手上路
帖 子:8
专家分:0
注 册:2012-6-4
第
12
楼
得分:0
回复 11楼 png
谢谢回复。基本上可以这样理解,但有一个问题是连续的两个月有可能是61天,有可能是62天,也有可能是59天
2012-06-07 06:07
png
等 级:
蝙蝠侠
威 望:
4
帖 子:126
专家分:880
注 册:2010-10-6
第
13
楼
得分:0
是不是可以这样, 没测试哈 -
select a.NI
from PatientAdmissionsData a join PatientAdmissionsData b
on b.NI = a.NI and
b.AdmissionDate > a.AdmissionDate and b.AdmissionDate < dateadd(m, 2, a.AdmissionDate)
group by a.NI, a.AdmissionDate
having count(*) > 5
[
本帖最后由 png 于 2012-6-7 11:37 编辑
]
2012-06-07 10:40
gaointer
等 级:
新手上路
帖 子:8
专家分:0
注 册:2012-6-4
第
14
楼
得分:0
回复 13楼 png
十分感谢您的回答,今天MS一位高手说是
要设置两个循环了
内循环 计算两个月内出现6次的和六个月出现8次的病人 将符合条件的病人ID插入制定表中
外循环 就是从指定月份开始搜索 循环增加 起始月份+1 直到当前日期的前6个月为止
请求给位高手们给点具体的提示!
2012-06-07 17:29
png
等 级:
蝙蝠侠
威 望:
4
帖 子:126
专家分:880
注 册:2010-10-6
第
15
楼
得分:0
你不会没试一下我举例的CODE? 效果应该不比那位MS高手的建议差. 不信你再问一问他/她?
另外我也没看出MS高手所建议外循环的必要性.
[
本帖最后由 png 于 2012-6-7 21:48 编辑
]
2012-06-07 21:47
15
2/2页
1
2
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-370793-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 1.270216 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved