Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.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_Sql Server 2012 - Fatal编程技术网

Sql 如何在一个介于另一个表的两个日期之间的表中使用随机日期填充列

Sql 如何在一个介于另一个表的两个日期之间的表中使用随机日期填充列,sql,sql-server,sql-server-2012,Sql,Sql Server,Sql Server 2012,我有两张表,像病人记录表和手术记录表。我想在surgery\u record表中的surgery\u Date列中填充一个介于patient\u record表中的Beg\u Date和End\u Date值之间的随机日期(Beg_Date和End_Date分别是患者入院日期和出院日期。目前我有以下查询。提前感谢 患者记录: Beg_Date = DATEADD(DAY, ABS(CHECKSUM(NEWID()) % 365), '01/01/2000') End_Date = DATEADD

我有两张表,像病人记录表和手术记录表。我想在
surgery\u record
表中的
surgery\u Date
列中填充一个介于
patient\u record
表中的
Beg\u Date
End\u Date
值之间的随机日期(
Beg_Date
End_Date
分别是患者入院日期和出院日期。目前我有以下查询。提前感谢

患者记录:

Beg_Date = DATEADD(DAY, ABS(CHECKSUM(NEWID()) % 365), '01/01/2000')
End_Date = DATEADD(DAY, 85 + ABS(CHECKSUM(NEWID()) % 11), Beg_Date)
update Surgery_Record
set Surgery_Date =  DATEADD(DAY, 85 + ABS(CHECKSUM(NEWID()) % 11), patient_record.Beg_Date)
手术记录:

Beg_Date = DATEADD(DAY, ABS(CHECKSUM(NEWID()) % 365), '01/01/2000')
End_Date = DATEADD(DAY, 85 + ABS(CHECKSUM(NEWID()) % 11), Beg_Date)
update Surgery_Record
set Surgery_Date =  DATEADD(DAY, 85 + ABS(CHECKSUM(NEWID()) % 11), patient_record.Beg_Date)
但我得到了以下错误:

Msg 4104, Level 16, State 1, Line 2
The multi-part identifier "patient_record.Beg_Date" could not be bound.
我知道我必须在这两个表之间建立一个关系,才能共同使用属性,并且我已经在不同的属性上设置了外键约束。如果这还不够,请给出建议

update Surgery_Record
set Surgery_Date =  DATEADD(DAY, 85 + ABS(CHECKSUM(NEWID()) % 11), patient_record.Beg_Date)
from patient_record
where patient_record.PatID=Surgery_Record.PatID