【发布时间】:2021-05-19 04:49:29
【问题描述】:
我在 Python 中有一个嵌套字典“sample_dict 和一些 Parameters:
import pandas as pd
#Parameters
Condition_Name='ID_0.5_365D'
Insert_Date='2021-05-19 00:00:00'
sample_dict=\
{pd.Timestamp('2015-01-02 00:00:00'): {'navi.o_efx': 180.0,
'navi.o_qrvo.o': 180.0,
'navi.o_stm.n': 180.0,
'qrvo.o_efx': 1.0,
'qrvo.o_stm.n': 1.0},
pd.Timestamp('2014-12-31 00:00:00'): {'navi.o_efx': 179.0,
'navi.o_stm.n': 179.0}}
对于给定的日期,具有不同的键和值。
用于插入的MySQL表“sample_table”的结构如下:
CREATE TABLE sample_table (
Date datetime DEFAULT NULL,
Pair_Name varchar(255) DEFAULT NULL,
Condition_Name varchar(255) DEFAULT NULL,
Condition_Value double(16, 4) DEFAULT NULL,
Insert_Date datetime DEFAULT NULL
)
ENGINE = INNODB,
AVG_ROW_LENGTH = 159,
CHARACTER SET latin1,
COLLATE latin1_swedish_ci;
如何通过合并“sample_dict”和“Parameters”在 Python 中使用 for 循环创建 MySQL 插入查询?例如,输出查询应按如下所示格式创建:
INSERT INTO sample_table(Date, Pair_Name, Condition_Name,Condition_Value,Insert_Date) VALUES ('2015-01-02 00:00:00','navi.o_efx','ID_0.5_365D',180,'2021-05-19 00:00:00');
INSERT INTO sample_table(Date, Pair_Name, Condition_Name,Condition_Value,Insert_Date) VALUES ('2015-01-02 00:00:00', 'navi.o_qrvo.o','ID_0.5_365D',180,'2021-05-19 00:00:00');
INSERT INTO sample_table(Date, Pair_Name, Condition_Name,Condition_Value,Insert_Date) VALUES ('2015-01-02 00:00:00', 'navi.o_stm.n','ID_0.5_365D',180,'2021-05-19 00:00:00');
INSERT INTO sample_table(Date, Pair_Name, Condition_Name,Condition_Value,Insert_Date) VALUES ('2015-01-02 00:00:00', 'qrvo.o_efx','ID_0.5_365D',1,'2021-05-19 00:00:00');
INSERT INTO sample_table(Date, Pair_Name, Condition_Name,Condition_Value,Insert_Date) VALUES ('2015-01-02 00:00:00', 'qrvo.o_stm.n','ID_0.5_365D',1,'2021-05-19 00:00:00');
INSERT INTO sample_table(Date, Pair_Name, Condition_Name,Condition_Value,Insert_Date) VALUES ('2014-12-31 00:00:00','navi.o_efx','ID_0.5_365D',179,'2021-05-19 00:00:00');
INSERT INTO sample_table(Date, Pair_Name, Condition_Name,Condition_Value,Insert_Date) VALUES ('2014-12-31 00:00:00','navi.o_stm.n','ID_0.5_365D',179,'2021-05-19 00:00:00');
“sample_table”中的最终插入将如下所示:
【问题讨论】:
-
“sample_table”中的最终插入内容如下: 1) 作为文本发布,而不是作为图片发布(格式正确); 2)显示与显示的源数据严格匹配的输出(不是“像这样”)。
-
@Akina:我已经发布了插入内容及其确切的相应输出。在批评之前,请花点时间去思考它! :)
-
糟糕...抱歉。我对 12 小时值(以及 MySQL 的非标准日期时间格式)感到困惑
标签: python mysql python-3.x dictionary