我有一张桌子:
2015-11-03
2015-11-04
2015-11-05
2015-11-07
我需要得到以下内容:
import pandas as pd
import numpy as np
a = np.array([1,2,3,4])
b = np.array([5,6,7,8])
df = pd.DataFrame({"name1" : a, "name2" : b})
df.to_csv("submission2.csv", index=False)
答案 0 :(得分:0)
您可以使用计数表来执行此操作:
SELECT DATE_ADD(from_date, INTERVAL rn DAY) AS `date`
FROM mytable
INNER JOIN (
SELECT @rn := @rn + 1 AS rn
FROM (
SELECT *
FROM (
SELECT 1 AS n1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL
SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL
SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1
) AS t1 CROSS JOIN (
SELECT 1 AS n2 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL
SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL
SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1 UNION ALL SELECT 1
) AS t2
) AS t CROSS JOIN (SELECT @rn := -1) AS var
) AS tally ON DATEDIFF(to_date, from_date) >= rn
ORDER BY `date`
上述查询假设连续的[from_date, to_date]
间隔不重叠。
使用的计数表是两个内联表之间CROSS JOIN
的结果,每个行有10行,因此它只有100行。如果您的数据包含大于100天的[from_date, to_date]
间隔,则可能需要更大的表格。
答案 1 :(得分:0)
您可以使用date_format()函数来执行此操作:
SELECT DATE_FORMAT(fromDate,'%Y-%m-%d') AS FromDate FROM tablename;
<强>输出:强>
FROM日期
2015年11月3日
2015年11月4日
2015年11月5日
2015年11月7日