2013-08-22 67 views
0

我正在寫一個shell腳本從mysql數據庫(實際上,從一個特定的時間段到另一個數據庫的一部分)中獲取表並將其放入.csv文件中。 這裏是我寫的,我發現了一個錯誤使用mysql數據庫

mysql -u -p -B -e "use mytable;select * from table3;" | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > filename.csv 

(MySQL的多個查詢)

(請也暗示,我怎麼能提取從MySQL表中的數據進行特定的一段時間,說1月23日16:05至01月30日17:05)

請注意,表3是來自一個shell變量newtable的 所以我必須在代碼 使用$ newtable的我不得不使用shell只有

+0

你得到了什麼錯誤? – Barmar

+0

你想做什麼? –

+0

請編輯您的問題並複製/粘貼您正在收到的確切錯誤。 – user1502952

回答

0

使用在你的腳本newtable的:

newtable="table3" 
"mysql -u -p -B -e "use mytable;select * from $newtable;" 

對於查詢部分假設您正在使用「日期類型」一欄名爲「期間」且說查詢是:

"Select * from table3 where MONTHNAME(period)='January'; 

檢查這個最新的更新內容按您的要求:

date="2010-08-11" 
start="10:09:09" 
end="21:50:59" 

"Select * from table3 where DATE(period)='$date' and TIME(period) between 
'$start'and '$end'"; 
+0

大家好, 的錯誤已經全部解決了。 我還在創作的問題是,我無法在某一特定時間段內生成數據庫。日期,開始時間和結束時間由 說,例如 日期=「2013年8月7日」 開始=「01:30:00」結束 shell變量返回=「02:00:00」 所以如何獲取數據庫中$ date的時間$ start和$ end 謝謝 –

+0

什麼是字段數據類型和字段名稱,它將您的日期/時間記錄保存在表格中。 – user1502952

+0

爲日期,它是IVALDATE 開始時間它是IVALSTART –