通过复制先前记录中的数据来插入缺失记录。
我想从MYSQL数据库中获取一个月的数据。如果在特定日期不存在记录,则必须插入先前的记录。
下面的查询给出了过去1个月的数据:
select Date(TimeStamp),NodeName,CPUUtilization
from xyz
where timestamp >= last_day(now()) + interval 1 day - interval 1 month
group by DATE(TimeStamp);
但是缺少的记录需要与先前的数据一起插入
实际结果:
+-----------------+---------------------------+
| Date(TimeStamp) | NodeName| CPUUtilization |
+-----------------+---------------------------+
| 2019-02-01 | Node | 16.82 |
| 2019-02-02 | Node | 16.84 |
| 2019-02-04 | Node | 17 |
| 2019-02-07 | Node | 17.16 |
| 2019-02-10 | Node | 17.17 |
预期结果
+-----------------+---------------------------+
| Date(TimeStamp) | NodeName| CPUUtilization |
+-----------------+---------------------------+
| 2019-02-01 | Node | 16.82 |
| 2019-02-02 | Node | 16.84 |
| 2019-02-03 | Node | 16.84 |
| 2019-02-04 | Node | 17 |
| 2019-02-05 | Node | 17 |
| 2019-02-06 | Node | 17 |
| 2019-02-07 | Node | 17.16 |
| 2019-02-08 | Node | 17.16 |
| 2019-02-09 | Node | 17.16 |
| 2019-02-10 | Node | 17.17 |
这里,2019 - 02 - 03日期记录丢失了。它必须复制“2019-02-02”以前的记录数据吗?
数据库查询
SELECT Date(TimeStamp),NodeName,CPUUtilization
from xyz WHERE timestamp BETWEEN (CURRENT_DATE() - INTERVAL 1 MONTH) AND CURRENT_DATE();