【发布时间】:2021-06-23 10:53:42
【问题描述】:
我正在尝试在 SQL 中查找电话之间的时差。我的示例数据看起来像
| name | call_start | call_finished |
|---|---|---|
| Johnny | 2021-05-21 10:52:22.000 | 2021-05-21 10:52:25.000 |
| Peter | 2021-05-21 10:52:43.000 | 2021-05-21 10:53:10.000 |
| Peter | 2021-05-21 10:54:01.000 | 2021-05-21 10:54:01.000 |
| Johnny | 2021-05-21 10:53:48.000 | 2021-05-21 10:53:51.000 |
| Peter | 2021-05-21 10:54:14.000 | 2021-05-21 10:56:31.000 |
| Johnny | 2021-05-21 10:56:33.000 | 2021-05-21 10:56:38.000 |
| Johnny | 2021-05-21 10:58:13.000 | 2021-05-21 10:58:52.000 |
| Johnny | 2021-05-21 11:00:37.000 | 2021-05-21 11:00:37.000 |
| Johnny | 2021-05-21 11:03:14.000 | 2021-05-21 11:04:06.000 |
| Peter | 2021-05-21 11:05:20.000 | 2021-05-21 11:05:20.000 |
我想为每个name 找出call_finished 和call_start 之间的区别,以便生成一个Time_since_last_call 列。
| name | call start | call_finished | Time_since_last_call |
|---|---|---|---|
| Johnny | 2021-05-21 10:52:22.000 | 2021-05-21 10:52:25.000 | Null |
| Peter | 2021-05-21 10:52:43.000 | 2021-05-21 10:53:10.000 | Null |
| Peter | 2021-05-21 10:54:01.000 | 2021-05-21 10:54:01.000 | 51 |
| Johnny | 2021-05-21 10:53:48.000 | 2021-05-21 10:53:51.000 | 83 |
| Peter | 2021-05-21 10:54:14.000 | 2021-05-21 10:56:31.000 | 13 |
| Johnny | 2021-05-21 10:56:33.000 | 2021-05-21 10:56:38.000 | 162 |
| Johnny | 2021-05-21 10:58:13.000 | 2021-05-21 10:58:52.000 | 95 |
| Johnny | 2021-05-21 11:00:37.000 | 2021-05-21 11:00:37.000 | 105 |
| Johnny | 2021-05-21 11:03:14.000 | 2021-05-21 11:04:06.000 | 157 |
| Peter | 2021-05-21 11:05:20.000 | 2021-05-21 11:05:20.000 | 529 |
问题
- 如何为每个名称动态执行此操作?
- 是否可以只查找每天的时差?那么
Time_since_last_call不是在天数之间计算的吗?
【问题讨论】:
标签: sql-server azure-sql-database