YYkun

sql server 某一列求和

 

 

 

 

SELECT 患者来源,设备类型,检查部位,设备名称,convert(char(10),STUDY_DATE,121)  as 日期, count(distinct 就诊人次) as 就诊人次--SUM(就诊人数) AS 就诊人数
			FROM dbo.[V_SeePeople]	WHERE 
					STUDY_DATE >= \'2019-12-04 00:00:00.000\' and STUDY_DATE <= \'2019-12-11 23:59:59.000\'  
					and OFDEPARTMENT =\'FSK\'  and ORGNIZATIONCODE =\'0101\' 
				GROUP BY 患者来源,设备类型,检查部位,设备名称,convert(char(10),STUDY_DATE,121) --order by convert(char(10),STUDY_DATE,121)
UNION all
select \'\' ,\'\' ,\'\' ,\'\',\'合计\' ,sum( convert(int,temp.就诊人次))AS 就诊人次  from 
 (
 SELECT top 100 percent  患者来源,设备类型,检查部位,设备名称,convert(char(10),STUDY_DATE,121)  as 日期, count(distinct 就诊人次) as 就诊人次--SUM(就诊人数) AS 就诊人数
			FROM dbo.[V_SeePeople]   	WHERE 
					STUDY_DATE >= \'2019-12-04 00:00:00.000\' and STUDY_DATE <= \'2019-12-11 23:59:59.000\'  
					and OFDEPARTMENT =\'FSK\'  and ORGNIZATIONCODE =\'0101\' 
				GROUP BY 患者来源,设备类型,检查部位,设备名称,convert(char(10),STUDY_DATE,121) --order by convert(char(10),STUDY_DATE,121) 
			) as temp  

  

SELECT 患者来源,设备类型,检查部位,设备名称,convert(char(10),STUDY_DATE,121)  as 日期, count(distinct 就诊人次) as 就诊人次--SUM(就诊人数) AS 就诊人数
			FROM dbo.[V_SeePeople]	WHERE 
					STUDY_DATE >= \'2019-12-04 00:00:00.000\' and STUDY_DATE <= \'2019-12-11 23:59:59.000\'  
					and OFDEPARTMENT =\'FSK\'  and ORGNIZATIONCODE =\'0101\' 
				GROUP BY 患者来源,设备类型,检查部位,设备名称,convert(char(10),STUDY_DATE,121) --order by convert(char(10),STUDY_DATE,121)
UNION all
select \'\' as 患者来源,\'\' as 设备类型,\'\' as 检查部位,\'\'as 设备名称,\'合计\' as 日期,sum( convert(int,temp.就诊人次))AS 就诊人次  from 
 (
 SELECT top 100 percent  患者来源,设备类型,检查部位,设备名称,convert(char(10),STUDY_DATE,121)  as 日期, count(distinct 就诊人次) as 就诊人次--SUM(就诊人数) AS 就诊人数
			FROM dbo.[V_SeePeople]   	WHERE 
					STUDY_DATE >= \'2019-12-04 00:00:00.000\' and STUDY_DATE <= \'2019-12-11 23:59:59.000\'  
					and OFDEPARTMENT =\'FSK\'  and ORGNIZATIONCODE =\'0101\' 
				GROUP BY 患者来源,设备类型,检查部位,设备名称,convert(char(10),STUDY_DATE,121) --order by convert(char(10),STUDY_DATE,121) 
			) as temp   

 

注意:sql 存储 中 select \'\'  == select \'\'\'\' 

eg:

set @sqlstr2 = \' UNION all select \'\'\'\' ,\'\'\'\' ,\'\'\'\' ,\'\'\'\' ,\'\'合计\'\',sum( convert(int,temp.就诊人数))AS 就诊人数
from (SELECT top 100 percent \'+@SelectName+@sdate+\' as 日期,
count(distinct 就诊人数) as 就诊人数 FROM dbo.[V_SeePeople] WHERE
\'+@sDateColum+\' >= \'\'\'+ @sStartDate+\' 00:00:00\' +\'\'\' and \'+@sDateColum+\' <= \'\'\' +@sEndDate+\' 23:59:59\'+\'\'\' \'+@sMod+\'
GROUP BY \'+@GroupName + @sdate + \') as temp\' ;

 

 

 

  

分类:

技术点:

相关文章:

  • 2022-12-23
  • 2021-08-26
  • 2022-12-23
  • 2022-12-23
  • 2021-10-06
  • 2021-11-02
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-28
  • 2021-11-28
  • 2022-01-27
  • 2021-08-18
相关资源
相似解决方案