我使用要扩展的DATE表(日历),例如:
月度表 astreinte_mensu 从2018年7月12日至2019年7月12日
但是现在,我想通过保留已记录的数据将其延长至2020年7月12日。
我已经尝试过的内容: 将整个数据库复制到一个临时数据库。 重新创建数据库。 尝试填充失败
这怎么办?有一个更好的主意吗?
预先谢谢你!
这是表格的结构:
+------------+-------+-----------+---------------+---------------+---------------+---------------+
| dateID | Annee | Mois | Personne1Nuit | Personne2Nuit | Personne1Jour | Personne2Jour |
+------------+-------+-----------+---------------+---------------+---------------+---------------+
| 2018-07-12 | 2018 | juillet | NULL | NULL | NULL | NULL |
| 2018-08-12 | 2018 | août | NULL | NULL | NULL | NULL |
| 2018-09-12 | 2018 | septembre | NULL | NULL | NULL | NULL |
| 2018-10-12 | 2018 | octobre | NULL | NULL | NULL | NULL |
| 2018-11-12 | 2018 | novembre | NULL | NULL | NULL | NULL |
| 2018-12-12 | 2018 | décembre | NULL | NULL | NULL | NULL |
| 2019-01-12 | 2019 | janvier | NULL | NULL | NULL | NULL |
| 2019-02-12 | 2019 | février | NULL | NULL | NULL | NULL |
| 2019-03-12 | 2019 | mars | NULL | NULL | NULL | NULL |
| 2019-04-12 | 2019 | avril | NULL | NULL | NULL | NULL |
| 2019-05-12 | 2019 | mai | NULL | NULL | NULL | NULL |
| 2019-06-12 | 2019 | juin | NULL | NULL | NULL | NULL |
| 2019-07-12 | 2019 | juillet | NULL | NULL | NULL | NULL |
+------------+-------+-----------+---------------+---------------+---------------+---------------+
创建副本:
CREATE TABLE testDB.astreinte_mensu AS (SELECT * FROM astreinte_mensu);
删除表格:
DROP TABLE IF EXISTS astreinte_mensu;
按dateID填充数据:(出现重复条目'0000-00-00'错误)
IF EXISTS (SELECT dateID FROM testDB.astreinte_mensu WHERE MONTH(dateID) = MONTH(astreinte_mensu.dateID) AND YEAR(dateID) = YEAR(astreinte_mensu.dateID)) THEN
SELECT Personne1Nuit FROM testDB.astreinte_mensu WHERE MONTH(dateID) = MONTH(testDB.astreinte_mensu.dateID) AND YEAR(dateID) = YEAR(testDB.astreinte_mensu.dateID);
INSERT INTO astreinte_mensu (Personne1Nuit) SELECT Personne1Nuit FROM testDB.astreinte_mensu WHERE MONTH(dateID) = MONTH(testDB.astreinte_mensu.dateID) AND YEAR(dateID) = YEAR(testDB.astreinte_mensu.dateID);
END IF;
答案 0 :(得分:0)
是否可以插入新值?
INSERT INTO astreinte_mensu(dateID,Annee,Mois)值('2019-08-12','2019','août')
INSERT INTO astreinte_mensu(dateID,Annee,Mois)值(“您的值”,“您的值”,“您的值”)