Combine rows when the end time of one is the start time of another, if not then as it is in SQL.
For example:

```
DATE_SRNO   start                   End                       Actual_Date
1          2018-08-04 12:22:00.000  2018-08-04 13:22:00.000   2018-08-04
1          2018-08-04 13:22:00.000  2018-08-04 16:46:00.000   2018-08-04
1          2018-08-04 20:17:00.000  2018-08-04 21:16:00.000   2018-08-04
1          2018-08-04 22:12:00.000  2018-08-04 22:28:00.000   2018-08-04
2          2018-08-05 19:08:00.000  2018-08-05 20:00:00.000   2018-08-05
2          2018-08-05 20:00:00.000  2018-08-05 20:52:00.000   2018-08-05
3          2018-08-20 07:27:00.000  2018-08-21 06:00:00.000   2018-08-20
3          2018-08-21 03:36:00.000  2018-08-21 04:36:00.000   2018-08-20
3          2018-08-21 04:36:00.000  2018-08-21 06:00:00.000   2018-08-20

```

Expected output:

```
Sr.No   start                    End                        Actual_Date
1       2018-08-04 12:22:00.000 2018-08-04 16:46:00.000     2018-08-04
1       2018-08-04 20:17:00.000 2018-08-04 21:16:00.000     2018-08-04
1       2018-08-04 22:12:00.000 2018-08-04 22:28:00.000     2018-08-04
2       2018-08-05 19:08:00.000 2018-08-05 20:52:00.000     2018-08-05
3       2018-08-20 07:27:00.000 2018-08-21 06:00:00.000     2018-08-20
3       2018-08-21 03:36:00.000 2018-08-21 06:00:00.000     2018-08-20

```

I have tried below query but exact output is not getting.

```
SELECT
    T1.Malf_start,
    T2.MalfEnd,
    T1.COMPARE_DATE
FROM
    #temp T1
INNER JOIN
    #temp T2
    ON T2.DATE_SRNO = T1.DATE_SRNO
    AND T2.Malf_start = T1.MalfEnd

```

Below is the result I got.

```
start                   End                     Actual_Date
2018-08-04 12:22:00.000 2018-08-04 16:46:00.000 2018-08-04
2018-08-05 19:08:00.000 2018-08-05 20:52:00.000 2018-08-05
2018-08-21 03:36:00.000 2018-08-21 06:00:00.000 2018-08-20

```