Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何根据特定床位的占用日期填写医院数据库中“患者”表的“床位号”列_Sql_Sql Server_Tsql_Sql Server 2012 - Fatal编程技术网

Sql 如何根据特定床位的占用日期填写医院数据库中“患者”表的“床位号”列

Sql 如何根据特定床位的占用日期填写医院数据库中“患者”表的“床位号”列,sql,sql-server,tsql,sql-server-2012,Sql,Sql Server,Tsql,Sql Server 2012,我正在为我的项目建立一个医院数据库。我有病人、床、医生等桌子。患者表和床位表分别具有患者入院和床位占用的Beg_日期和End_日期 我想在患者表中的床位号列中填写一个空床位号(即如果床上没有任何患者)。我的问题是,我只有300张病床,可容纳500名病人。因此,我完全不确定如何通过比较患者的Beg_日期和End_日期来填写床位号。我还希望将此信息保存在床位表中的patientID、Beg_-Date和End_-Date列下(即哪个患者在哪个日期占用了哪个床位的信息)。对于这张床,我只知道有“插入级

我正在为我的项目建立一个医院数据库。我有病人、床、医生等桌子。患者表和床位表分别具有患者入院和床位占用的Beg_日期和End_日期


我想在
患者
表中的
床位号
列中填写一个空床位号(即如果床上没有任何患者)。我的问题是,我只有300张病床,可容纳500名病人。因此,我完全不确定如何通过比较患者的
Beg_日期
End_日期
来填写床位号。我还希望将此信息保存在床位表中的
patientID
Beg_-Date
End_-Date
列下(即哪个患者在哪个日期占用了哪个床位的信息)。对于这张床,我只知道有“插入级联”和“删除级联”,但不确定如何使用它。

我也在一家医院工作

您绝对不希望将床位数据放入患者表中。床位数据是就诊的一部分,而不是一个人的一部分。首先,患者可能有多次就诊。另外,如果你的医院和我的一样,病人可以在就诊期间更换床位。危重病护理单位和普通护理单位之间的转移很常见

如果你的医院将500人安置在300张病床上,了解现实生活中的情况,并据此设计数据库

编辑从这里开始

根据Jason的评论,你可以有一张床位占用表和一张床位表。那么您的可用床位将是:

select bed_id
from bed
minus
select bed_id
from bed_occupancy
where enter_datetime is not null
and departure_datetime is null

然后,将由用户为患者分配空床。在现实生活中,还有其他考虑因素,例如一些床位在外科病房,一些在重症监护室,等等。当临床工作人员在患者之间进行短距离步行时,他们的工作效率更高。

我也在医院工作

您绝对不希望将床位数据放入患者表中。床位数据是就诊的一部分,而不是一个人的一部分。首先,患者可能有多次就诊。另外,如果你的医院和我的一样,病人可以在就诊期间更换床位。危重病护理单位和普通护理单位之间的转移很常见

如果你的医院将500人安置在300张病床上,了解现实生活中的情况,并据此设计数据库

编辑从这里开始

根据Jason的评论,你可以有一张床位占用表和一张床位表。那么您的可用床位将是:

select bed_id
from bed
minus
select bed_id
from bed_occupancy
where enter_datetime is not null
and departure_datetime is null

然后,将由用户为患者分配空床。在现实生活中,还有其他考虑因素,例如一些床位在外科病房,一些在重症监护室,等等。临床工作人员在患者之间进行短距离步行时效率更高。

添加一个额外的立柱,称为床位状态,并具有一些预定义的状态,如可用、占用、,保留的等

不论患者,只考虑床位数作为唯一的ID。

无论患者何时入院或出院,或即使在某些危重病例中转移,都要更新此特定床位表

注-如果可能,将患者编号指定给该特定床位编号。同样,在患者出院或入院时更新这两个版本

只需根据状态运行查询,即可找到已占用床位、可用床位和预留床位等

从bed_表中选择计数(bed_状态)作为可用项,其中bed_状态=“可用”

从bed_表中选择COUNT(bed_状态),其中bed_状态为“已占用”


从bed_表中选择COUNT(bed_status)作为reservedBeds,bed_status=“Reserved”

添加一个额外的列,称为bed_status,并具有一些预定义的状态,如可用、占用、保留等

不论患者,只考虑床位数作为唯一的ID。

无论患者何时入院或出院,或即使在某些危重病例中转移,都要更新此特定床位表

注-如果可能,将患者编号指定给该特定床位编号。同样,在患者出院或入院时更新这两个版本

只需根据状态运行查询,即可找到已占用床位、可用床位和预留床位等

从bed_表中选择计数(bed_状态)作为可用项,其中bed_状态=“可用”

从bed_表中选择COUNT(bed_状态),其中bed_状态为“已占用”


从bed_table中选择COUNT(bed_status)作为reservedBeds,bed_status=“Reserved”

基于此,他似乎可以在患者和病床之间建立一个具有自己生效日期的桥接表,以反映患者实际在给定病床上的时间。这将介于就诊和日期之间。如果巴迪住院,出院,然后再次住院,那就是一个病人两次就诊。就像杰森说的,我在床和病人之间有一个过桥台。我想用patientID、bedID、status(可用/占用)、Beg_日期和End_日期(如果占用)填充此表…如果问题令人困惑,请道歉…请提前帮助感谢基于此,听起来他可以在患者和床位之间建立一个具有自己生效日期的桥接表,反映患者何时实际躺在给定的床上。这可能是在就诊和日期之间。如果巴迪住院,出院,然后再次住院,那就是一个病人两次就诊。就像杰森说的,我在床和病人之间有一个过桥台。我想用patientID、bedID、状态(可用/占用)、Beg_日期和End_日期(如果占用)填充此表…如果问题令人困惑,请道歉…请提前帮助谢谢是的,但我没有