根据表列中的日期和时间更新列表

时间:2017-09-06 13:19:12

标签: c# sql-server sql-server-2016

我只想询问如何使用日期和时间更新特定列。我有一个名为date,time和dayofstay

的表格列

离。

|dayofstay|       date        |         time.       |
|        1       |09/06/2017  |6:30:27.10273

如果系统时间为6:30:27.10273 在09/06/2017之前它将计算从date列到sysdate()的总天数 然后,总日期将更新为dayofstay列。 如果

系统日期和时间在09/07 / 2017,6:30:27.10273,它将计算更新表格的总天数

|dayofstay|       date        |         time.       |
|      2         |09/06/2017  |6:30:27.10273|

关于这一点的任何想法我都认为它是一个触发器 但我缺乏SQL知识。 想法,很少的代码来弄清楚或建议是 接受

1 个答案:

答案 0 :(得分:0)

WHILE EXISTS(SELECT DaysofStay from AdmittedPatientWard where [Status] = 'ADMITTED' AND LastTimeCensus <= CONVERT (time, SYSDATETIME()))
BEGIN
UPDATE [dbo].[AdmittedPatientWard]
   SET  [DaysofStay] = DATEDIFF ( D , AdmittedPatientWard.LastCensusDate , GETDATE() )

 WHERE [Status] = 'ADMITTED'
END

我想出了这段代码