【发布时间】:2016-06-05 22:27:46
【问题描述】:
我一直无法弄清楚如何在 Ruby 中将其他列而不是行写入 CSV 文件。在这种情况下,它们是 SQL 查询。
我的代码片段:
month = mysql.query("SELECT DATE_FORMAT(company_db.dates.starting_date,'%m') FROM company_db.dates.starting_date;")
day = mysql.query("SELECT DATE_FORMAT(company_db.dates.starting_date,'%d') FROM company_db.dates.starting_date;")
year = mysql.query("SELECT DATE_FORMAT(company_db.dates.starting_date,'%Y') FROM company_db.dates.starting_date;")
CSV.open("Dates.csv, "wb") do |csv|
csv << ["Month", "Day", "Year"]
csv << [(month.each {|row| csv << row}), (day.each {|row| csv << row}), (year.each {|row| csv << row})]
end
我得到的输出:
Month, Day, Year
1,
.
.
.
12,
1,
.
.
.
31,
1970,
.
.
.
2015
以及我想要的输出:
Month, Day, Year
1, 1, 1970
. . .
. . .
. . .
12, 31, 2015
感谢您的帮助。
【问题讨论】:
-
为什么不把你的三个sql语句合二为一呢?
mysql.query("SELECT DATE_FORMAT(company_db.dates.starting_date,'%m'), DATE_FORMAT(company_db.dates.starting_date,'%d'), DATE_FORMAT(company_db.dates.starting_date,'%Y') FROM company_db.dates.starting_date;") -
我知道该怎么做。那不是我问的问题。
-
你能显示查询的输出对象吗?