如何创建一个Mysql表,其列名称为从2000年到现在的monthNumbers。
例如:
CREATE TABLE abc_horizontal
(PRIMARY KEY (a_fips),
a_fips INT(7),
val_200001 DEC(8,4),
val_200002 DEC(8,4),
val_200003 DEC(8,4),
val_200004 DEC(8,4), upto 201703 ?
有没有一种较短的方法可以使用python脚本从2000到当月生成这些val_yyyymm?
最佳答案
天哪,有很多方法!继承人...
print( "\n".join([
"CREATE TABLE abc_horizontal",
"(PRIMARY KEY (a_fips)",
", a_fips INT(7)",
"\n".join([
", val_20%02d%02d DEC(8,4)"%(x,y+1)
for x in range(18)
for y in range(12)
if not (x == 17 and y >= 04)
]),
" );"
] ) )
您可能真正想要的是这样的东西
CREATE TABLE abc_horizontal (
PRIMARY KEY (a_fips, reporting_date),
a_fips INT(7),
reporting_date CHAR(6),
value DEC(8,4)
);
关于python - 如何从2000年开始使用月名创建Mysql表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42810046/