计算床位占用率的总住院时间 sql 中的公式

calculating Total Length of stay for a bed occupancy rate Formula in sql

我们有一个 table 名为 PatientAdmissions 的列表如下

我试图通过(AdmitDate 作为 FromDate,DischargeDate 作为 ToDate)从用户那里获取总停留时间,即 AdmitDate 和 DischargeDate 在给定时间段内的总日期差异 然后应用以下公式

并且该期间的天数将是 AdmitDate 作为 FromDate,DischargeDate 作为 ToDate ,我想不出一种方法来编写查询而不出现任何错误

SELECT *,DATEDIFF(hour, AdmitDate, DischargeDate) AS 'Total Length of stay',
DATEDIFF(day, AdmitDate, DischargeDate) AS 'Number of Days in the period',
(DATEDIFF(hour, AdmitDate, DischargeDate)*100)/(133*DATEDIFF(day, AdmitDate, DischargeDate))
AS Formula
from TableName

DATEDIFF() 函数 returns 两个日期值之间的差异,基于指定的时间间隔。

语法: DATEDIFF(Interval, date1, date2)

  • 年,yyyy,yy = 年
  • 季度,qq,q = 季度
  • 月,mm,m = 月
  • dayofyear = 一年中的第几天
  • 天,dy,y = 天
  • 星期,ww,wk = 星期
  • 工作日,dw,w = 工作日
  • 小时,hh = 小时
  • 分钟,mi,n = 分钟
  • 秒,ss,s=秒
  • 毫秒,ms = 毫秒

SELECT (DATEDIFF(minute, AdmitDate , DischargeDate ))/133*(DATEDIFF(day, AdmitDate , DischargeDate )*100) 来自 PatientAdmissions