【发布时间】:2021-06-15 22:08:23
【问题描述】:
我有以下 SQL Server (2019) 表:
CREATE TABLE [dbo].[log_Current](
[line_number] [int] NULL,
[Time] [time](7) NULL,
[server_time_initial] [datetime] NULL,
[Correct_Date_Time] [datetime] NULL
) ON [PRIMARY]
GO
数据:
| line_number | Time | server_time_initial | Correct_Date_Time |
|---|---|---|---|
| 69 | 07:05:08.0000000 | 2021-05-15 07:05:05.000 | NULL |
| 72 | 07:05:25.0000000 | 2021-05-15 07:05:05.000 | |
| 73 | 07:05:30.0000000 | 2021-05-15 07:05:05.000 | |
| 215 | 16:34:36.0000000 | 2021-05-15 07:05:05.000 | |
| 216 | 16:56:01.0000000 | 2021-05-15 07:05:05.000 | |
| 283 | 21:06:02.0000000 | 2021-05-15 07:05:05.000 | |
| 284 | 21:08:52.0000000 | 2021-05-15 07:05:05.000 | |
| 511 | 23:57:06.0000000 | 2021-05-15 07:05:05.000 | |
| 512 | 23:57:07.0000000 | 2021-05-15 07:05:05.000 | |
| 513 | 00:00:05.0000000 | 2021-05-15 07:05:05.000 | |
| 514 | 00:01:57.0000000 | 2021-05-15 07:05:05.000 | |
| 633 | 02:49:06.0000000 | 2021-05-15 07:05:05.000 | |
| 634 | 02:49:08.0000000 | 2021-05-15 07:05:05.000 | |
| 1074 | 05:13:58.0000000 | 2021-05-15 07:05:05.000 | |
| 1075 | 05:13:59.0000000 | 2021-05-15 07:05:05.000 | |
| 1888 | 23:53:52.0000000 | 2021-05-15 07:05:05.000 | |
| 1889 | 23:54:08.0000000 | 2021-05-15 07:05:05.000 | |
| 1890 | 00:00:16.0000000 | 2021-05-15 07:05:05.000 | |
| 1891 | 00:00:16.0000000 | 2021-05-15 07:05:05.000 |
等等……
字段:
-
[server_time_initial] 对于所有行都相同,表示提取日志的时间。等于 2021-05-15 07:05:05
-
[line_number] 为日志入口顺序
-
[Time] 是日志条目的时间,但遗憾的是没有日期。
-
Correct_Date_Time - 必须为每行填写正确的日期 + 时间。正如您所看到的,时间条目从早上的某个时间开始(不一定在 O AM),然后过了午夜,等等……这种模式持续了好几天。 第一批,表示从 07:05:08 到 23:57:07 的时间,在 2021-05-15 输入到 [line_number] 512。从[line_number] 513是第二天,即2021-05-16,到[line_number] 1889。然后,从[line_number] 1890,进入日期是2021-05-17等......
所需结果应更新 [Correct_Date_Time] 列:
**line_number Time server_time_initial** Correct_Date_Time
69 07:05:08.0000000 2021-05-15 07:05:05.000 2021-05-15 07:05:08
72 07:05:25.0000000 2021-05-15 07:05:05.000 2021-05-15 07:05:25
73 07:05:30.0000000 2021-05-15 07:05:05.000 2021-05-15 07:05:30
215 16:34:36.0000000 2021-05-15 07:05:05.000 2021-05-15 16:34:36
216 16:56:01.0000000 2021-05-15 07:05:05.000 etc...
283 21:06:02.0000000 2021-05-15 07:05:05.000
284 21:08:52.0000000 2021-05-15 07:05:05.000
511 23:57:06.0000000 2021-05-15 07:05:05.000
512 23:57:07.0000000 2021-05-15 07:05:05.000 2021-05-15 23:57:07
513 00:00:05.0000000 2021-05-15 07:05:05.000 2021-05-16 00:00:05
514 00:01:57.0000000 2021-05-15 07:05:05.000 etc...
633 02:49:06.0000000 2021-05-15 07:05:05.000
634 02:49:08.0000000 2021-05-15 07:05:05.000
1074 05:13:58.0000000 2021-05-15 07:05:05.000
1075 05:13:59.0000000 2021-05-15 07:05:05.000
1888 23:53:52.0000000 2021-05-15 07:05:05.000
1889 23:54:08.0000000 2021-05-15 07:05:05.000 2021-05-16 23:54:08
1890 00:00:16.0000000 2021-05-15 07:05:05.000 2021-05-17 00:00:16
1891 00:00:31.0000000 2021-05-15 07:05:05.000 2021-05-17 00:00:31
【问题讨论】:
-
你试过什么?请更新您的问题,尽您最大的努力自己解决。
标签: sql sql-server