医院常见报表统计思路整理

这里写目录标题

    • 医院常见报表统计思路
    • 第一章 资源配置与运行指标数据
      • 一、床位配置
      • 二、卫生技术人员配备
      • 三、相关科室资源配置
      • 四、运行指标
      • 五、科研指标
    • 第二章 医疗服务能力与医院质量安全指标
      • 业务量相关
      • 单病种相关

医院常见报表统计思路

现在很多医院都要按照《三级医院评审标准(XX年版)》,现在根据相应文件,重新维护目录。

第一章 资源配置与运行指标数据

一、床位配置

涉及系统(HIS系统),涉及表如下


--

CREATE TABLE [dbo].[每日床位统计表](
	统计日期 [date] NOT NULL,
    床位代码  varchar(4)          not null, --病床代码
	科室编码 [int] NULL,
	病区编码 [int] NULL,
	空床数 [int] NOT NULL,
	加床数  int,  
    额定床位 int NULL ,
	总床数 [int] NOT NULL,
	占用的床数 [int] NOT NULL
) ON [PRIMARY]


--
create table 住院床位信息表
(
    病床代码           varchar(4)          not null, --病床代码
    病区编码    [int]        not null, --病区代码
    病区名称         varchar(32)                 null, --病区名称
    病床所在房间          varchar(32)              null, --房间号
    科室编码       [int]           not null, --科室代码
    科室名称             varchar(32)                   null, --科室名称 
    床位类型          int               not null, --床位类型(0:男, 1:女, 2:混)
    编制类型          int               not null, --编制类型(0:在编, 1:非编, 2:加床)
    占床标志          int     	      not null, --占床标志(0空床, 1占床, 2包床)    
    病人id          varchar(32)                   null, --病人ID,占床时不为0,空床为0
    记录状态         int     	      not null, --记录状态(0使用, 1停用) 
     借床标志 	  ut_bz 		  null,	--借床标志(0:普通1:借床)

    
)
每天执行
insert into 每日床位统计表(统计日期, 床位代码, 科室编码,病区编码,空床数,加床数,总床数,占用的床数,额定床位)
select getdate(),床位代码,科室编码,病区编码,case when 占床标志 = 1 then 1 else 0 end as 空床数,
case when 编制类型 = 2 then 1 else 0 end as 加床数,
1 as 总床数,case when 占床标志 = 1 then 1 else 0 end as 占用的床数,
case when 编制类型 =0 then 1 else 0 end as 额定床位,
from 住院床位信息表
where 记录状态 =0 

指标

--核定床位数
select count (distinct  床位代码) from 每日床位统计表 where 统计日期 between @开始日期 and @结束日期
and  编制类型 =0


--实际开放床位数
select count( distinct  床位代码) from 每日床位统计表 where 统计日期 between @开始日期 and @结束日期 and 编制类型




--
--实际占用总床日数
select sum( 占用的床数) from 每日床位统计表 where 统计日期 between @开始日期 and @结束日期 

--实际开放总床日数
select sum( 总床数) from 每日床位统计表 where 统计日期 between @开始日期 and @结束日期 

--平均床位使用率
实际占用总床日数/实际开放总床日数

二、卫生技术人员配备

涉及人力资源系统和HIS系统

--人力资源表

CREATE TABLE [dbo].[人力资源主表](
	[唯一序号] [int] IDENTITY(1,1) NOT NULL,
	[医院代码] [varchar](20) NOT NULL,	
	[医生代码] [int] NOT NULL,	
	[医生名称] [varchar](32) NOT NULL,
	[登记时间] [date] NOT NULL,
	[性别] [varchar](10) NULL,	
	[出生日期] [datetime] NULL,
	[年龄] [int] NULL,	
	[记录状态] [int] NULL,
	[职工电话] [varchar](64) NULL,
	[职工邮箱] [varchar](128) NULL,
	[婚姻状态] [varchar](20) NULL,
	[生育情况] [varchar](20) NULL,
	[政治面貌] [varchar](20) NULL,
	[入职时间] [datetime] NOT NULL,
	[离职时间] [datetime] NULL,	
	[科室代码] [varchar](20) NULL,
	[科室名称] [varchar](60) NULL,	
	[工作状态] [varchar](20) NULL,	
	[专业技术资格代码] [int] NULL,	
	[职称级别代码] [varchar](20) NULL,	
	[麻醉医师标志] [int] NULL,
	[急诊科固定人员标志] [int] NULL,
	[血液净化专业标志] [int] NULL,
	[国家名称] [varchar](128) NULL,	
	[医师范围大类代码] [int] NULL,	
	医师执业范围小类代码 [int] NULL,	
	[最高学位代码] [varchar](20) NULL,	
	[最高学历毕业院校] [varchar](255) NULL,
	[最高学位授予日期] [datetime] NULL,
	[更新日期] [datetime] NULL
	[临床药师标志] [int] NULL,
	
) ON [PRIMARY]
--()卫生技术人员
select count(distinct 医生代码) from 人力资源主表 where 专业技术资格代码 in
(副主任技师,主管药师,主任药师,副主任医师,主管检验师,主任护师,技师,主任麻醉师,
药师,主任中医师,主任医师,主任检验师,副主任检验师,主治中医师,主管护师,主管技师
检验师,护师,主治医师,副主任麻醉师,中药师,副主任中医师,副主任药师,医师,主任技师
护士,副主任护师)AND 工作状态 IN ('在岗','返聘')
--(一)卫生技术人员数/与开放床位数比
卫生技术人员数/开放床位数
--药学技术人员统计
SELECT COUNT(DISTINCT 医生代码) rs FROM 人力资源主表 WHERE 
职称类别代码= '药学人员' AND 工作状态 IN ('在岗','返聘') and 科室 IN( 药剂科室)

三、相关科室资源配置

涉及系统

四、运行指标

五、科研指标

第二章 医疗服务能力与医院质量安全指标

业务量相关

统计出入院人数

--住院业务量统计逻辑

/*1、首先找出以下几张表包括住院
住院病人基本信息表:包含内容病人唯一ID,病历号,入院科室ID,入院时间,出院时间,出院科室ID,主管医生ID,病人住院流程ID(包括入院,入区,在区,出区等状态),入院诊断ID,出院方式
住院病人结算主表:病人唯一ID,病历号,患者姓名,结算唯一号ID,总金额,实付金额,报销金额,本次费用记录状态(正常,红冲,被红冲,作废), 结算流程状态(未结算,已结算),医保报销状态(未结算,已结算)

统计出院人次
首先出院可以包含多种口径,包括:出区未出院,出院未结算,出院已结算*/

--出院人数口径1:一般医院都是统计出院已结算人次作为出院人数
SELECT * FROM 住院病人基本信息表 A 
inner join 住院病人结算主表 B on A.病人唯一ID and B.病人唯一ID 
where B.结算状态 = 正常 AND 
本次费用记录状态 = 已结算 AND 
医保报销状态=已结算

--收费处方表
CREATE TABLE [dbo].[收费处方表](
	
	
	[确费处方序号] [int] NULL,
	[处方序号] [INT] NOT NULL,
	[结算Id号] [INT] NOT NULL,
	[录入处方时间] [DATETIME] NOT NULL,
	[患者id] [NUMERIC](12, 0) NOT NULL,
	
	[药品id] [CHAR](4) NOT NULL,
	
	[医生id] [CHAR](12) NOT NULL,
	[费用确认人id] [CHAR](12) NOT NULL,
	[科室id] [CHAR](12) NOT NULL,
	[药房id] [CHAR](12) NOT NULL,
	[发药人id] [CHAR](12) NULL,
	
	[收费状态] [SMALLINT] NOT NULL,
	[处方状态] [SMALLINT] NOT NULL,
	[费用类别] [SMALLINT] NOT NULL,
	
	[处方实际金额] [MONEY] NULL,
	[处方病人实际支付金额] [MONEY] NULL,
	
	[发票Id] [BIGINT] NULL,
	
	[特殊管控标志] [SMALLINT] NULL,
	
) ON [PRIMARY]
CREATE TABLE [dbo].[病人结算信息](
	
	[结算Id号] [CHAR](32) NOT NULL,
	[病人id号] [NUMERIC](12, 0) NOT NULL,
	
	[发票Id] [BIGINT] NULL,
	
	[收费日期] [DATETIME] NULL,
	
	[科室id] [CHAR](12) NOT NULL,
	
	[病历号] [VARCHAR](24) NOT NULL,
	[医保代码] [CHAR](4) NOT NULL,
	
	[总费用] [MONEY] NOT NULL,
	[病人实际支付费用] [MONEY] NOT NULL,
	
	[交易流水号] [VARCHAR](36) NULL,
	
	[退收据号] [CHAR](32) NULL,
	[记录状态] [SMALLINT] NOT NULL,
	[卡号] [VARCHAR](32) NULL,
	[卡类型] [CHAR](2) NOT NULL,
	[收费标志] [SMALLINT] NOT NULL,
	
) ON [PRIMARY]

--统计诊疗人次数,按当天病人在各个科室实际发生的费用作为到这个科室就诊的依据,过滤医技科室(因为有体检人次,所以医生ID会直接关联到医技人员,而不是关联录入处方医生,再有确认人id关联医技人员)
 SELECT CAST(a.处方录入日期 AS DATE) 处方录入日期,a.科室id,a.医生id,count(distinct a.患者id) brs
		
	
	from  a (nolock),病人结算信息 b (nolock)
	where  a.处方录入日期 between 开始时间 and GETDATE() 		
	and ((a.结算标志 = 已结算 and b.收费标志 = 普通收费) 	--收费统计已结帐
	or b.收费标志 = 家床收费)					--家床统计
	and a.结算id= b.结算id
	and 科室id not in (医技科室)
	group by a.科室id,a.医生id, CAST(a.处方录入时间 AS DATE)

单病种相关


CREATE TABLE [dbo].[病案诊断表](	
	[医院代码] [VARCHAR](20) NULL,
	[时间] [DATE] NOT NULL,
	[病案唯一号] [VARCHAR](64) NOT NULL,
	[就诊唯一序号] [VARCHAR](20) NOT NULL,
	[录入时间] [DATETIME] NULL,
	[入院时间] [DATETIME] NOT NULL,
	[出院时间] [DATETIME] NOT NULL,
	[诊断类型] [VARCHAR](20) NULL, --入院诊断、出院诊断、手术诊断、术后诊断
	[诊断序号] [INT] NOT NULL,
	[转归情况] [VARCHAR](10) NULL,
	[诊断代码] [VARCHAR](64) NULL,
	[诊断名称] [VARCHAR](256) NULL,
	[诊断情况] [VARCHAR](10) NULL, --好转,死亡,治愈
	
	[诊断时间] [DATE] NULL,
	[timetempstr] [TIMESTAMP] NOT NULL,
	
) 
CREATE TABLE [dbo].[病案基本信息表](
	[医院代码] [VARCHAR](20) NULL,
	[时间] [DATE] NOT NULL,
	[病案唯一号] [VARCHAR](64) NOT NULL,
	[就诊唯一序号] [VARCHAR](20) NOT NULL,
	[录入时间] [DATETIME] NULL,
	[入院时间] [DATETIME] NOT NULL,
	[出院时间] [DATETIME] NOT NULL,
	[病人唯一ID] [varchar](50) NULL,
	[病历号] [varchar](32) NULL,	
	[住院次数] [int] NULL,
	[姓名] [varchar](256) NULL,
	[出生日期] [datetime] NULL,
	[身份证号] [varchar](20) NULL,
	[年龄] [varchar](12) NULL,
	[性别] [varchar](12) NULL,
	[出生地] [varchar](80) NULL,
	[籍贯] [varchar](128) NULL,
	[门诊诊断代码] [varchar](10) NULL,
	[婚姻状况代码] [varchar](32) NULL,
	[婚姻状况名称] [varchar](64) NULL,
	[现地址] [varchar](100) NULL,
	[户口地址] [varchar](100) NULL,
	[工作单位地址] [varchar](100) NULL,
	[社会身份名称] [varchar](40) NULL, --公民 党员	
	[确诊天数] [varchar](20) NULL,
	[确诊日期] [date] NULL,
	[7天标志] [int] NULL,
	[15天标志] [int] NULL,
	[30天标志] [int] NULL,
	
	[医保分类代码] [varchar](10) NULL,	
	[病人性质(医疗付费方式)] [varchar](10) NULL,	
	[入院情况代码] [varchar](10) NULL,	
	[出院方式] [varchar](16) NULL,
	
	[治愈标志] [int] NULL,
	[会诊标志] [int] NULL,
	[死亡标志] [int] NULL,
	[自动出院标志] [int] NULL,
	[手术死亡标志] [int] NULL,
	[离院方式代码] [varchar](10) NULL,
	[转科次数] [int] NULL,	
	[入院科室代码] [varchar](20) NULL,		
	[入院病区代码] [varchar](20) NULL,	
	[出院科室代码] [varchar](20) NULL,
	[出院病区] [varchar](20) NULL,
	[出院床号] [varchar](10) NULL,
	[住院天数] [int] NOT NULL,
	[留观标志] [int] NULL,
	[危重标志] [int] NULL,	
	[抢救标志] [int] NULL,
	[抢救次数] [int] NULL,
	[抢救成功次数] [int] NULL,
	[院内感染标志] [int] NULL,
	[并发症标志] [int] NULL,	
	[门诊诊断代码] [varchar](20) NULL,
	[入院诊断代码] [varchar](20) NULL,	
	[出院诊断编码] [varchar](20) NULL,	
	[过敏药物代码] [varchar](64) NULL,
	[手术感染标志] [int] NULL,
	[ICU标志] [int] NULL,
	[ICU天数] [int] NULL,
	
	[婴儿标志] [int] NULL,
	
	[临床路径标志] [int] NULL,
	

	
) ON [PRIMARY]

CREATE TABLE [dbo].[病案手术信息表](
	[医院代码] [VARCHAR](20) NULL,
	[时间] [DATE] NOT NULL,
	[病案唯一号] [VARCHAR](64) NOT NULL,
	[就诊唯一序号] [VARCHAR](20) NOT NULL,
	[录入时间] [DATETIME] NULL,
	[入院时间] [DATETIME] NOT NULL,
	[出院时间] [DATETIME] NOT NULL,
	[病人唯一ID] [varchar](50) NULL,
	[病历号] [varchar](32) NULL,	
	[住院次数] [int] NULL,
	[姓名] [varchar](256) NULL,
	[出生日期] [datetime] NULL,
	[身份证号] [varchar](20) NULL,
	[年龄] [varchar](12) NULL,
	[性别] [varchar](12) NULL,
	[手术开始时间] [date] NULL,
	[手术结束时间] [date] NULL,
	[手术序号] [varchar](20) NOT NULL,	
	[科室代码] [varchar](20) NULL,	
	[手术医生代码] [varchar](20) NULL,
	[手术医生名称] [varchar](30) NULL,	
	[诊断医生代码] [varchar](20) NULL,	
	[手术医嘱代码] [varchar](20) NULL,
	[手术医嘱名称] [varchar](30) NULL,	
	[门诊医生代码] [varchar](20) NULL,
	
	
	[手术操作代码] [varchar](20) NULL,
	[手术名称] [varchar](256) NULL,
	[手术级别代码] [varchar](10) NULL,
	[手术类型代码] [int] NULL,  --择期手术,非择期,日间
	
	[门诊诊断代码] [varchar](10) NULL,
	[手术感染部位] [varchar](20) NULL,
	[愈合类别] [varchar](8) NULL,
) ON [PRIMARY]

--通过病案统计并发症
--1、创建并发症临时表
CREATE TABLE #FACT_GZ_HZAQ_BFZ(          
[时间] [date] NOT NULL,----出院日期  精确到天          
[医院代码] [int] NOT NULL default 0,--医院    
[科室代码] [varchar] NOT NULL default 0,--科室          
[就诊序号] [varchar](20) NOT NULL  default 0,        
[并发症代码] [varchar](20) NOT NULL default 0,--并发症         
诊断代码 varchar(64) null,---诊断--辅助诊断代码      
转归情况 varchar(10) null, --转归情况代码                                  
         
[分娩方式代码] [int] NOT NULL default 0,--分娩方式代理键  
[手术标志] [int]  NOT NULL  default 0,--手术患者标志          
[重点手术标志] [int]  NOT NULL  default 0,--重点手术患者标志          
择期手术标志 int null,---择期手术患者标志        
急诊手术标志 int null,---急诊手术患者标志        
限期手术标志 int null,---限期手术患者标志        
日间手术标志 int null, ---日间手术患者标志        
[死亡标志] [int]  NOT NULL  default 0,--死亡患者标志          
    [qxfzfmbz] [int]  NOT NULL  default 0 ,--器械辅助分娩患者标志    
成年标志 int not null default 1,----成年患者标志  年满18岁   
     
新生儿标志 int  null default 0 ,---新生儿标志  
诊断时间 DATETIME, --诊断时间 
诊断时间最早 DATETIME, --诊断时间-最早 
手术时间 DATETIME ,--手术时间       
ICU标志 int  null default 0 ---ICU标志             
)   


insert into #并发症临时表(时间,医院代码,科室代码,就诊序号
,并发症代码,诊断代码,转归情况代码        
,分娩方式代码,手术标志,重点手术患者标志,择期手术患者标志,急诊患者手术标志,限期手术患者标志,日间手术标志
,死亡标志,成年患者标志,盆腔手术患者标志,新生儿标志,ICU标志)                    
select convert(date,syjb.出院时间) as 时间,syjb.医院代码,isnull(syjb.科室代码,'0') 科室代码,syjb.就诊唯一序号 syxh       
,0 并发症代码,syzd.诊断代码,syzd.转归情况,                      
,0 分娩方式   
,0 手术标志,0 zdssbz,0 择期手术患者标志,0 急诊患者手术标志,0 限期手术患者标志,0 日间手术标志        
,syjb.死亡标志as swbz        
        
,case when case when syjb.年龄<>'' then convert(money,syjb.年龄) else 18 end >=18 then 1 else 0 end as  成年标志     
,0 盆腔手术患者标志    
,syjb.新生儿标志                
,syjb.ICU标志                          
from 病案基本信息表 syjb with(nolock)         
left join 病案诊断信息表 syzd with(nolock) on syzd.就诊序号=syjb.就诊序号 and  syzd.医院代码=syjb.医院代码  --医院代码是考虑分院情况                
where syjb.出院时间 between @ksrq and @jsrq 
and syzd.诊断序号<>1    --不取第一个主诊断,原因之一,专科医院第一诊断较为固定(妇幼医院)

SELECT  ROW_NUMBER() OVER ( PARTITION  BY a.就诊序号,a.医院代码,zdqk.诊断代码 ORDER BY zdqk.诊断日期DESC) AS RNUM,
-- 按照a.就诊序号,a.医院代码,zdqk.诊断代码分组,并按诊断日期排序后,给分组后的每组数据增加一列分组排序号
a.就诊序号,a.诊断代码,a.医院代码,zdqk.诊断日期
INTO #zd_table
 FROM #并发症临时表 a INNER JOIN HIS.病案诊断表 zdqk(NOLOCK) 
ON a.就诊序号 = zdqk.就诊序号 AND a.医院代码 = zdqk.医院代码 AND a.诊断代码 =zdqk.诊断代码


UPDATE a SET 诊断时间 = 诊断时间 FROM #并发症临时表 a INNER JOIN #zd_table b ON a.就诊序号 = zdqk.就诊序号 AND a.医院代码 = zdqk.医院代码 AND a.诊断代码 =zdqk.诊断代码
WHERE b.RNUM = 1 --取诊断最晚诊断时间,为了计算手术后下的诊断

update a set 手术标志=1  ,sssj = CAST(syss.ssjssj AS DATETIME)      
,择期手术标志=syss.择期手术标志--择期        
,急诊手术标志= syss.急诊手术标志--急诊        
,日间手术标志= syss.日间手术标志--日间   
,盆骨手术标志=case when icd.手术名称LIKE '%盆腔%' AND (icd.手术类别='手术' ) then 1 else 0 end   
,器械辅助分娩患者标志  =case when left(icd.zybm,3) = '72.'  then 1 else 0 end       
from ##并发症临时表 a   
join 病案手术表 syss with(nolock) ona.就诊序号 = zdqk.就诊序号 AND a.医院代码 = zdqk.医院代码          
left join 标准ICD码 icd on syss.手术编码=icd.手术编码
--where syss.手术类型包含 in (手术,介入)   ---手术类型包含(手术,介入)




--诊断代码判断


update a set 并发症代码=        
case when (a.诊断代码 like 'J98.414%') then 1--肺部感染        

--手术包含(手术、介入手术)
when (a.诊断代码 like 'I26.9%')  and a.ssbz=1 AND DATEDIFF(HOUR,sssj,zdsj)>0 then 30  --手术患者手术后肺栓塞
when (a.诊断代码 like 'I80.2%' or a.诊断代码 like 'I82.8%') AND DATEDIFF(HOUR,sssj,zdsj)>=0 AND a.ssbz=1 then 31  --手术患者手术后深静脉血栓
when (left(a.诊断代码,3) in('A40','A41') or a.诊断代码 like 'T81.411%')AND  DATEDIFF(HOUR,sssj,zdsj)>0and a.ssbz=1 then 32  --手术患者手术后败血症
when (a.诊断代码 like 'T81.0%') AND DATEDIFF(HOUR,sssj,zdsj)>0 AND a.ssbz=1 then 33  --手术患者手术后出血或血肿
when (a.诊断代码 like 'T81.3%') AND DATEDIFF(HOUR,sssj,zdsj)>0 AND a.ssbz=1 then 34  --手术患者手术伤口裂开
when (left(a.诊断代码,5) in('R96.0','R96.1','I46.1')) AND DATEDIFF(HOUR,sssj,zdsj)>=0 AND a.ssbz=1 then 35  --手术患者手术后猝死
when (left(a.诊断代码,5) in('J96.0','J96.1','J96.9')) AND DATEDIFF(HOUR,sssj,zdsj)>=0 AND a.ssbz=1 then 36  --手术患者手术后呼吸衰竭
when (left(a.诊断代码,3)='E89') AND DATEDIFF(HOUR,sssj,zdsj)>0 AND a.ssbz=1 then 37  --手术患者手术后生理/代谢紊乱
when (a.诊断代码 like 'T81.4%') and a.ssbz=1 then 38  --与手术/操作相关感染
when (a.诊断代码 like 'T81.5%' or a.诊断代码 like 'T81.6%')and a.ssbz=1 then 39  --手术过程中异物遗留
when (left(a.诊断代码,5) between 'T88.2' and 'T88.5') and a.ssbz=1 then 40  --手术患者麻醉并发症
when (left(a.诊断代码,5) between 'J95.1' and 'J95.9' or charindex('J98.4',a.诊断代码,1)>=0) and a.ssbz=1 then 41  --手术患者肺部感染与肺机能不全
when (a.诊断代码 like 'T81.2%') and a.ssbz=1 then 42  --手术意外穿刺伤或撕裂伤
when (left(a.诊断代码,3)='N17' or a.诊断代码 like 'N99.0%') and a.ssbz=1 then 43  --手术后急性肾衰竭
when (left(a.诊断代码,3)='K91') and a.ssbz=1 then 44  --各系统/器官术后并发症-消化
when (left(a.诊断代码,5) in('I97.0','I97.1','I97.8','I97.9')) AND DATEDIFF(HOUR,sssj,zdsj)>=0 AND a.ssbz=1 then 45  --各系统/器官术后并发症-循环
when (left(a.诊断代码,5) in('G97.0','G97.1','G97.2','G97.8','G97.9') or left(a.诊断代码,3) between 'I60' and 'I64') AND DATEDIFF(HOUR,sssj,zdsj)>=0 and a.ssbz=1 then 46  --各系统/器官术后并发症-神经
when (left(a.诊断代码,5) in('H59.0','H59.8','H59.9')) AND DATEDIFF(HOUR,sssj,zdsj)>=0 AND a.ssbz=1 then 49  --各系统/器官术后并发症-眼和附器
when (left(a.诊断代码,5) in('H95.0','H95.1','H95.8','H95.9')) AND DATEDIFF(HOUR,sssj,zdsj)>=0 AND a.ssbz=1 then 50  --各系统/器官术后并发症-耳和乳突
when (left(a.诊断代码,3)= 'M96') and a.ssbz=1 then 51  --各系统/器官术后并发症-肌肉骨骼
when (left(a.诊断代码,5) in('N98.0','N98.1','N98.2','N98.3','N98.8','N98.9') or left(a.诊断代码,3)= 'N99') and a.ssbz=1 then 52  --各系统/器官术后并发症-泌尿生殖
when (left(a.诊断代码,5) in ('K11.4','S04.3','S04.5','T81.2')) AND DATEDIFF(HOUR,sssj,zdsj)>=0 and a.ssbz=1 then 53  --各系统/器官术后并发症-口腔
when (a.诊断代码 like 'T82%') and a.ssbz=1 then 54  --植入物的并发症(不包括脓毒症)--心脏和血管
when (a.诊断代码 like 'T83%') and a.ssbz=1 then 55  --植入物的并发症(不包括脓毒症)--泌尿生殖道
when (a.诊断代码 like 'T84%') and a.ssbz=1 then 56  --植入物的并发症(不包括脓毒症)--骨科
when (a.诊断代码 like 'T85%') and a.ssbz=1 then 57  --植入物的并发症(不包括脓毒症)--其他
when (a.诊断代码 like 'T86%') and a.ssbz=1 then 58  --移植的并发症发生
when (a.诊断代码 like 'T87%') and a.ssbz=1 then 59  --再植和截肢的并发症
when (left(a.诊断代码,5) in ('T81.1','T81.7','T81.8','T81.9')) and a.ssbz=1 then 60  --介入操作与手术后患者其他并发症
when (left(a.诊断代码,3) between 'P10' and 'P15' or a.诊断代码 like 'A33%') and a.xsebz=1 then 61  --新生儿产伤
when (left(a.诊断代码,5) in('O70.1','O70.2','O70.3','O70.9','O72.0','O72.1','O72.2','O72.3','O73.0','O73.1') 
or a.诊断代码 like 'O71%' or a.诊断代码 like 'O74%'  or a.诊断代码 like 'O75%'
or substring(a.诊断代码,1,5) between 'O86.0' and 'O86.8' or a.诊断代码 like 'O87%'
or substring(a.诊断代码,1,5) between 'O88.0' and 'O88.8' or a.诊断代码 like 'O89%' or a.诊断代码 like 'O90%'
or substring(a.诊断代码,1,3)='A34'
) 
--and a.fmfsmc='阴道分娩'
 then 62  --阴道分娩产妇产程和分娩并发症
when (left(a.诊断代码,5) in('O72.0','O72.1','O72.2','O72.3','O73.0','O73.1') 
or a.诊断代码 like 'O71%' or a.诊断代码 like 'O74%'  or a.诊断代码 like 'O75%'
or a.诊断代码 like 'O87%' or a.诊断代码 like 'O89%' or a.诊断代码 like 'O90%'
or a.诊断代码 like 'A34%' or a.诊断代码 like 'O91%' or a.诊断代码 like 'O95%'
or left(a.诊断代码,5) between 'O86.0' and 'O86.8' or left(a.诊断代码,5) between 'O88.0' and 'O88.8'
) 
--and a.fmfsmc='剖宫产'
then 63  --剖宫产分娩产妇产程和分娩并发症
when (left(a.诊断代码,5) in('L89.1','L89.2','L89.3','L89.9')) then 64  --2期及以上院内压力性损伤
when (left(a.诊断代码,5) in('T80.0','T80.2','T80.1','T80.8','T80.9')) then 65  --输注反应发生
when (a.诊断代码 like 'T80%') then 66  --)输血反应发生
when (left(a.诊断代码,5) in('J93.8','J93.9','J95.8') or a.诊断代码 like 'T81.218%') then 67  --医源性气胸发生
when (left(a.诊断代码,5) in('S32.4','S32.7','S32.8','S73.0','S73.1') or a.诊断代码 like 'S72%') then 68  --)住院患者医院内跌倒/坠床所致髋部骨折
when (a.诊断代码 like 'J95.802%') and a.icubz=1 then 69  --)住院ICU患者呼吸机相关性肺炎
when (a.诊断代码 like 'T82.700x001%') and a.icubz=1 then 70  --住院ICU患者血管导管相关性感染
when (a.诊断代码 like 'T83.500x003%') and a.icubz=1 then 71  --住院ICU患者导尿管相关性尿路感染
when (a.诊断代码 like 'Y40%') then 72  --)临床用药所致的有害效应(不良事件)-全身性抗菌药物的有害效应
when (a.诊断代码 like 'Y42.3%') then 73  --)临床用药所致的有害效应(不良事件)-降血糖药物的有害效应
when (a.诊断代码 like 'Y43.1%' or a.诊断代码 like 'Y43.3%') then 74  --)临床用药所致的有害效应(不良事件)-抗肿瘤药物的有害效应
when (left(a.诊断代码,5) in('Y44.2','Y44.3','Y44.4','Y44.5')) then 75  --)临床用药所致的有害效应(不良事件)-抗凝剂的有害效应
when (a.诊断代码 like 'Y45%') then 76  --)临床用药所致的有害效应(不良事件)-镇痛药和解热药的有害效应
when (a.诊断代码 like 'Y52%') then 77  --)临床用药所致的有害效应(不良事件)-心血管系统用药的有害效应
when (a.诊断代码 like 'Y57.5%' or a.诊断代码 like 'Y57.6%') then 78  --)临床用药所致的有害效应(不良事件)-.X 线造影剂及其他诊断性制剂的有害效应
when (left(a.诊断代码,5) in('T80.6','T80.8','T80.9','T82.4','T82.7')) then 79  --血液透析所致并发症发生
--2020版本质量指标医疗安全指标 
else 0      
end        
  
from  #并发症临时表 a 

60个单病种脚本

declare 
@year varchar(10) --统计年限



--A18 其他器官的结核
SELECT DISTINCT 1 序号,@year 统计时间,sy.出院日期 出院时间,'其他器官的结核' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.basyxh,sy.blh

from 病案基本信息表 sy(nolock) inner join FAT_BASYZD zd(nolock) on sy.basyxh=zd.basyxh
where (substring(zd.zddm,1,3) ='A18')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year


union
--B00 疱疹病毒[单纯疱疹]感染
select DISTINCT 2 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'疱疹病毒[单纯疱疹]感染' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='B00')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--B02 带状疱疹
select DISTINCT 3 序号 ,@year 统计时间 ,sy.出院日期,'带状疱疹' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='B02')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--B08 其他以皮肤和粘膜损害为特征的病毒性感染
SELECT DISTINCT 4 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'其他以皮肤和粘膜损害为特征的病毒性感染' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='B08')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--B18 慢性病毒性肝炎
SELECT DISTINCT 5 序号 ,@year 统计时间,sy.出院日期 出院时间,'慢性病毒性肝炎' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='B18')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--C73 甲状腺恶性肿瘤
select DISTINCT 6 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'甲状腺恶性肿瘤' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='C73')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--D13 消化系统其他和不明确部位的良性肿瘤
select DISTINCT 7 序号 ,@year 统计时间 ,sy.出院日期,'消化系统其他和不明确部位的良性肿瘤' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='D13')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--D16 骨和关节软骨良性肿瘤
select DISTINCT 8 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'骨和关节软骨良性肿瘤' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='D16')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--D17 良性脂肪瘤样肿瘤
select DISTINCT 9 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'良性脂肪瘤样肿瘤' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='D17')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--D18 血管瘤和淋巴管瘤,任何部位
select DISTINCT 10 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'血管瘤和淋巴管瘤,任何部位' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='D18')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--D24 乳房良性肿瘤
select DISTINCT 11 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'乳房良性肿瘤' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='D24')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--D25 子宫平滑肌瘤
select 12 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'子宫平滑肌瘤' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='D25')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--D27 卵巢良性肿瘤
select 13 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'卵巢良性肿瘤' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='D27')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--D36 其他和未特指部位的良性肿瘤
select 14 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'其他和未特指部位的良性肿瘤' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='D36')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--D50 缺铁性贫血
select 15 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'缺铁性贫血' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='D50')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--D69 紫癜和其他出血性情况
select 16 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'紫癜和其他出血性情况' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='D69')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--E05 甲状腺毒症(甲状腺功能亢进症)
select 17 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'甲状腺毒症(甲状腺功能亢进症)' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='E05')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--E07 甲状腺的其他疾患
select 18 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'甲状腺的其他疾患' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='E07')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--E10 胰岛素依赖型糖尿病
select 19 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'胰岛素依赖型糖尿病' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='E10')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--E11 非胰岛素依赖型糖尿病
select 20 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'非胰岛素依赖型糖尿病' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='E11')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--G40 癫痫
select 21 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'癫痫' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='G40')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--G45 短暂性大脑缺血性发作和相关的综合征
select 22 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'短暂性大脑缺血性发作和相关的综合征' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='G45')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--H02 眼睑的其他疾患
select 23 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'眼睑的其他疾患' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='H02')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--H11 结膜的其他疾患
select 24 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'结膜的其他疾患' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='H11')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--H25 老年性白内障
select 25 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'老年性白内障' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='H25')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--H26 其他白内障
select 26 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'其他白内障' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='H26')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--H33 视网膜脱离和断裂
select 27 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'视网膜脱离和断裂' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='H33')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--H40 青光眼
select 28 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'青光眼' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='H40')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--H81 前庭功能疾患
select 29 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'前庭功能疾患' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='H81')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--H91 其他听觉丧失
select 30 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'其他听觉丧失' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='H91')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year

--PRINT '1 success'
UNION
--I10 特发性(原发性)高血压
select 31 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'特发性(原发性)高血压' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='I10')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--I20 心绞痛
select 32 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'心绞痛' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='I20')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--I47 阵发性心动过速
select 33 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'阵发性心动过速' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='I47')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--I70 动脉粥样硬化
select 34 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'动脉粥样硬化' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='I70')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--I80 静脉炎和血栓性静脉炎
select 35 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'静脉炎和血栓性静脉炎' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='I80')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--I83 下肢静脉曲张
select 36 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'下肢静脉曲张' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='I83')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--I84 痔
select 37 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'痔' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='I84')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--I86 其他部位的静脉曲张
select 38 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'其他部位的静脉曲张' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='I86')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--I87 静脉的其他疾患
select 39 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'静脉的其他疾患' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='I87')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--J04 急性喉炎和气管炎
select 40 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'急性喉炎和气管炎' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='J04')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--J06 多发性和未特指部位的急性上呼吸道感染
select 41 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'多发性和未特指部位的急性上呼吸道感染' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='J06')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--J20 急性支气管炎
select 42 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'急性支气管炎' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='J06')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--J21 急性细支气管炎
select 43 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'急性细支气管炎' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='J21')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--J32 慢性鼻窦炎
select 44 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'慢性鼻窦炎' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='J32')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--J33 鼻息肉
select 45 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'鼻息肉' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='J33')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--J34 鼻和鼻窦的其他疾患
select 46 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'鼻和鼻窦的其他疾患' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='J34')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--J35 扁桃体和腺样体慢性疾病
select 47 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'扁桃体和腺样体慢性疾病' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='J35')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--J38 声带和喉疾病,不可归类在他处者
select 48 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'声带和喉疾病,不可归类在他处者' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='J38')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--J40 支气管炎,未特指为急性或慢性
select 49 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'支气管炎,未特指为急性或慢性' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='J40')
and zdxh=1
union
--J45 哮喘
select 50 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'哮喘' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='J45')
and zdxh=1
union
--K11 涎腺疾病
select 51 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'涎腺疾病' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='K11')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--K12 口炎和有关损害
select 52 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'口炎和有关损害' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='K12')
and zdxh=1
union
--K21 胃-食管反流性疾病
select 53 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'胃-食管反流性疾病' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='K21')
and zdxh=1
union
--K22 食管的其他疾病
select 54 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'食管的其他疾病' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='K22')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--K25 胃溃疡
select 55 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'胃溃疡' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='K25')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--K29 胃炎和十二指肠炎
select 56 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'胃炎和十二指肠炎' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='K29')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--K31 胃和十二指肠的其他疾病
select 57 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'胃和十二指肠的其他疾病' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='K31')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--K35 急性阑尾炎
select 58 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'急性阑尾炎' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='K35')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--K40 腹股沟疝
select 59 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'腹股沟疝' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='K40')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year
union
--K52 其他非感染性胃肠炎和结肠炎
select 60 序号 ,@year 统计时间 ,sy.出院日期 出院时间,'其他非感染性胃肠炎和结肠炎' 疾病名称, case when sy.swbz=1 THEN 1 ELSE 0  end swbz,  sy.病案唯一号,sy.blh  
from 病案基本信息表 sy(nolock) inner join 病案诊断表 zd(nolock) on sy.病案唯一号=zd.病案唯一号
where (substring(zd.诊断代码,1,3) ='K52')
and zdxh=1
and  convert(varchar(4),sy.出院日期,112)=@year




你可能感兴趣的:(医疗软件实施,经验分享)