通过复制先前记录中的数据来插入丢失的记录

时间:2019-02-19 10:01:35

标签: javascript mysql database mysqli database-administration

通过复制先前记录中的数据来插入丢失的记录。

我想从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'?

1 个答案:

答案 0 :(得分:0)

数据库查询

SELECT Date(TimeStamp),NodeName,CPUUtilization 
from xyz WHERE timestamp BETWEEN (CURRENT_DATE() - INTERVAL 1 MONTH) AND CURRENT_DATE();