I have a very simple table with a date (in days), equipment name and engine hours (cumulative) for that day in a SQL Server table. The raw data table shows there are gaps in the day dates. I need to fill the gaps and interpolate to provide hour values for those new rows. The "Desired result" table shows what the end product should look like.
My initial thinking is to create a "dates" table (recursive function) and use a left join to create the complete table, however filling the hour columns with interpolated data is beyond me at this stage. Any ideas?
Raw data
+------------+-----------+-------+--+--+
| Date | Equipment | Hours | | |
+------------+-----------+-------+--+--+
| 2019/01/01 | EQ1 | 50 | | |
+------------+-----------+-------+--+--+
| 2019/01/02 | EQ1 | 67 | | |
+------------+-----------+-------+--+--+
| 2019/01/03 | EQ1 | 87 | | |
+------------+-----------+-------+--+--+
| 2019/01/04 | EQ1 | 105 | | |
+------------+-----------+-------+--+--+
| 2019/01/07 | EQ1 | 150 | | |
+------------+-----------+-------+--+--+
| 2019/01/08 | EQ1 | 169 | | |
+------------+-----------+-------+--+--+
| 2019/01/09 | EQ1 | 187 | | |
+------------+-----------+-------+--+--+
| 2019/01/12 | EQ1 | 247 | | |
+------------+-----------+-------+--+--+
| 2019/01/13 | EQ1 | 265 | | |
+------------+-----------+-------+--+--+
| | | | | |
+------------+-----------+-------+--+--+
| 2019/01/01 | EQ2 | 150 | | |
+------------+-----------+-------+--+--+
| 2019/01/02 | EQ2 | 168 | | |
+------------+-----------+-------+--+--+
| 2019/01/03 | EQ2 | 187 | | |
+------------+-----------+-------+--+--+
| 2019/01/04 | EQ2 | 205 | | |
+------------+-----------+-------+--+--+
| 2019/01/05 | EQ2 | 222 | | |
+------------+-----------+-------+--+--+
| 2019/01/06 | EQ2 | 239 | | |
+------------+-----------+-------+--+--+
| 2019/01/07 | EQ2 | 255 | | |
+------------+-----------+-------+--+--+
| 2019/01/10 | EQ2 | 306 | | |
+------------+-----------+-------+--+--+
| 2019/01/13 | EQ2 | 357 | | |
+------------+-----------+-------+--+--+
Desired result
+------------+-----------+-------+--+--+
| Date | Equipment | Hours | | |
+------------+-----------+-------+--+--+
| 2019/01/01 | EQ1 | 50 | | |
+------------+-----------+-------+--+--+
| 2019/01/02 | EQ1 | 67 | | |
+------------+-----------+-------+--+--+
| 2019/01/03 | EQ1 | 87 | | |
+------------+-----------+-------+--+--+
| 2019/01/04 | EQ1 | 105 | | |
+------------+-----------+-------+--+--+
| 2019/01/05 | EQ1 | 120 | | |
+------------+-----------+-------+--+--+
| 2019/01/06 | EQ1 | 135 | | |
+------------+-----------+-------+--+--+
| 2019/01/07 | EQ1 | 150 | | |
+------------+-----------+-------+--+--+
| 2019/01/08 | EQ1 | 169 | | |
+------------+-----------+-------+--+--+
| 2019/01/09 | EQ1 | 187 | | |
+------------+-----------+-------+--+--+
| 2019/01/10 | EQ1 | 207 | | |
+------------+-----------+-------+--+--+
| 2019/01/11 | EQ1 | 227 | | |
+------------+-----------+-------+--+--+
| 2019/01/12 | EQ1 | 247 | | |
+------------+-----------+-------+--+--+
| 2019/01/13 | EQ1 | 265 | | |
+------------+-----------+-------+--+--+
| | | | | |
+------------+-----------+-------+--+--+
| 2019/01/01 | EQ2 | 150 | | |
+------------+-----------+-------+--+--+
| 2019/01/02 | EQ2 | 168 | | |
+------------+-----------+-------+--+--+
| 2019/01/03 | EQ2 | 187 | | |
+------------+-----------+-------+--+--+
| 2019/01/04 | EQ2 | 205 | | |
+------------+-----------+-------+--+--+
| 2019/01/05 | EQ2 | 222 | | |
+------------+-----------+-------+--+--+
| 2019/01/06 | EQ2 | 239 | | |
+------------+-----------+-------+--+--+
| 2019/01/07 | EQ2 | 255 | | |
+------------+-----------+-------+--+--+
| 2019/01/08 | EQ2 | 272 | | |
+------------+-----------+-------+--+--+
| 2019/01/09 | EQ2 | 289 | | |
+------------+-----------+-------+--+--+
| 2019/01/10 | EQ2 | 306 | | |
+------------+-----------+-------+--+--+
| 2019/01/11 | EQ2 | 323 | | |
+------------+-----------+-------+--+--+
| 2019/01/12 | EQ2 | 340 | | |
+------------+-----------+-------+--+--+
| 2019/01/13 | EQ2 | 357 | | |
+------------+-----------+-------+--+--+