这个是自己写的语句:
SELECT [病人姓名]
,[入院日期]
,A.[出院日期]
,DATEDIFF(DAY,[入院日期],A.[出院日期])+1 住院天数
,C.[项目名称]
,SUM([已结算次数]) 结算次数
,(SUM([已结算次数]))-(DATEDIFF(DAY,[入院日期],A.[出院日期])+1) 多结算次数
,[零售价]* (SUM([已结算次数]))-(DATEDIFF(DAY,[入院日期],A.[出院日期])+1) 多结算金额
,A.[结平日期]
FROM [医院HRIP].[dbo].[病人住院信息表_Pati_In_Visit] a
left join [医院HRIP].[dbo].[住院记帐项目_Pati_In_Bill_Item] b
on a.住院流水号=b.[住院流水号]
left join [医院HRIP].[dbo].[项目定义表_Dict_Item] C
ON B.项目编码=C.项目编码
LEFT JOIN [威海中心医院HRIP].[dbo].[项目收费属性定义表_Dict_Item_Charge] D
ON C.项目编码=D.项目编码
where [项目包装单位] like '%天%' or [项目包装单位] like '%日%'
group by [病人姓名],[入院日期],A.[出院日期] ,C.[项目名称],D.[零售价],A.[结平日期]
having (DATEDIFF(DAY,[入院日期],A.[出院日期])+1)<SUM([已结算次数])
------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------
这是查询出来的其中一列的结果
结平日期
2014-08-25 14:50:20.000
2017-09-10 14:41:12.000
2016-12-10 07:57:09.000
2016-12-08 07:26:04.000
2018-05-16 09:28:39.000
2018-01-02 15:29:11.000
2018-08-18 09:36:53.000
2015-01-19 10:31:35.000
------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------
请问在哪里添加什么样的语句之后可以筛选其中结平日期只有其中16-17年的数据
where [项目包装单位] like '%天%' or [项目包装单位] like '%日%' and A.[结平日期] between CONVERT( varchar(50),'2016') and CONVERT( varchar(50),'2017')
牛逼 你竟然有耐心看。。。
@去海边生活: 哈哈
我也没耐心看,凌乱的感觉
where ( [项目包装单位] like '%天%' or [项目包装单位] like '%日%' ) and (A.[结平日期]>'2016' and A.[结平日期]<'2018')