我在记录中发生某些事情时记录SQL中的开始和结束时间,基本上用户打开包含记录中信息的屏幕,并且我想查看屏幕已打开多长时间。在SQL中结合行
我记录的开始时间,并在舞台的情况下一起结束目前在这种情况下,链接表中与此类似:
| Id | Reference | Stage | StartTime | EndTime | | 1 | 123456789 | NEW | 2015-03-30 16:04:39.8100000 | NULL | | 2 | 123456789 | NEW | NULL | 2015-03-30 16:06:44.3830000 | | 3 | 123456789 | VAL | 2015-03-30 16:09:00.3800000 | NULL | | 4 | 123456789 | VAL | NULL | 2015-03-30 16:11:04.9870000 | | 5 | 123456789 | CAP | 2015-03-30 16:20:25.7900000 | NULL | | 6 | 123456789 | CAP | NULL | 2015-03-30 16:21:12.1130000 | | 7 | 123456789 | CAP | 2015-03-30 16:22:40.4930000 | NULL | | 8 | 123456789 | CAP | NULL | 2015-03-30 16:29:02.5030000 | | 9 | 123456789 | CAP | 2015-03-30 16:29:17.8970000 | NULL | | 10 | 123456789 | CAP | NULL | 2015-03-30 16:55:13.8870000 | | 11 | 123456789 | CAP | 2015-03-30 16:56:20.2230000 | NULL | | 12 | 123456789 | CAP | NULL | 2015-03-30 16:56:40.3830000 |
我一直在玩周围,但无法得到想要的结果:
| Id | Reference | Stage | StartTime | EndTime | | 1 | 123456789 | NEW | 2015-03-30 16:04:39.8100000 | 2015-03-30 16:06:44.3830000 | | 3 | 123456789 | VAL | 2015-03-30 16:09:00.3800000 | 2015-03-30 16:11:04.9870000 | | 5 | 123456789 | CAP | 2015-03-30 16:20:25.7900000 | 2015-03-30 16:21:12.1130000 | | 7 | 123456789 | CAP | 2015-03-30 16:22:40.4930000 | 2015-03-30 16:29:02.5030000 | | 9 | 123456789 | CAP | 2015-03-30 16:29:17.8970000 | 2015-03-30 16:55:13.8870000 | | 11 | 123456789 | CAP | 2015-03-30 16:56:20.2230000 | 2015-03-30 16:56:40.3830000 |
在这种情况下,我如何组合数据(开始和结束时间)?
您必须在插入EndTime时放置条件startTime是否存在此引用?并只更新行。根据你的情况,你应该更新Endtime的表格。 – Ajay 2015-03-31 09:38:42
这是我的第一个方法,但我想保持一个很好的审计跟踪,并且当多次打开一个屏幕时,更新与引用混淆了。所以我去了另一条路线,这使得事情变得更加困难,但是正常工作。 – 2015-03-31 10:14:10