【发布时间】:2022-01-23 10:56:47
【问题描述】:
我处理患者信息,其中包含入院日期和出院日期。我有一个查询,我需要添加一个 WHERE 子句,该子句只能识别日期范围内的患者。
例如,我想从 2021 年 5 月 1 日到 2021 年 5 月 31 日将所有在医院的病人都拉出来。这将包括在 5 月任何时候入院/出院(以及介于两者之间的任何时间)的患者。
Hospital 1
Patient Admit_Date Disch_Date
1 4/5/2021 5/20/2021
2 5/6/2021 5/10/2021
3 4/10/2021 4/22/2021
4 4/19/2021 7/5/2021
5 6/1/2021 6/7/2021
我只想包括从 2021 年 5 月 1 日到 2021 年 5 月 31 日在医院 1 中的患者,因此它会生成此表:
Hospital 1
Patient Admit_Date Disch_Date
1 4/5/2021 5/20/2021
2 5/6/2021 5/10/2021
4 4/19/2021 7/5/2021
我尝试使用 BETWEEN 子句,但它不包括像患者 #4 那样在 5 月之前入院和在 5 月之后出院但在 5 月住院的患者。基本上我正在尝试进行人口普查,所以我可以说在 5 月 4 日或 5 月 22 日等有 XX 名患者,但在整个 5 月(或任何一个月)。
谢谢!!!
【问题讨论】:
-
如果患者在 5 月底或之前入院并在 5 月初或之后出院,则该患者将在 5 月住院。
-
您使用的是哪种 DBMS 产品? “SQL”只是所有关系数据库都使用的一种查询语言,而不是特定数据库产品的名称。请为您使用的数据库产品添加tag。 Why should I tag my DBMS
-
列 Admit_Date 和 Disch_Date 数据类型?
-
SQL Server 管理工作室。日期是 CONVERT(date,Admit_Date,102)。基本上只是日期,但我想我可以稍后转换为日期。
标签: sql date where-clause date-range