2016-04-26 98 views
-1

我有幾個CSV文件總計高達100000行,並計劃導入到MySQL數據庫,我需要從日期中刪除時間並在數字後添加逗號。我只需要足夠長的逗號就可以在將行導入到MySQL之前將行切換爲短日期。從CSV文件中的日期中刪除時間戳

當前數據的格式如下所示。

Sep 1 2007 12:00AM 
Sep 6 2007 2:29PM 
Sep 6 2007 4:55PM 
Sep 10 2007 10:59AM 
Sep 10 2007 4:23PM 
Sep 11 2007 11:47AM 
Sep 11 2007 4:39PM 

任何人都可以推薦一個快速和無痛的方式來做到這一點在Excel中?

+0

我無法確切說,(我不知道這些是否在同一個單元格中),但TRIM(),LEFT(),MID(),RIGHT(),甚至DATE()應該可以正常工作。製作一個適用於前10個細胞的公式,然後將其應用於下! – seadoggie01

+0

如果數據不是字符串,而是日期序列,那麼'= DATE(YEAR(A1),MONTH(A1),DAY(A1))'將起作用。 – OldUgly

回答

0

假設它的所有文本爲基礎,並假設前11個字符是日期字段(3個月,2個日期,4個年份和2個空格),=LEFT(A1, 11)應該做的伎倆。

0

我會轉儲它在Excel中,使用文本到列將其拆分爲2列(固定寬度),刪除新的第二列,然後保存回CSV,它將littlely需要更長的時間來打開文件比它會執行這些步驟。

0

只需導入所有數據,然後在導入後刪除該列。 範圍。(「C:C」)clearContents中

祝您好運:)

1

這大概是關於做它的方式,但我解決了這個由=SUBSTITUTE(TRIM(LEFT(A2,11))," ",", ",2)此將其轉換爲以下格式將轉換成的短日期格式。

Sep 6, 2007 
Sep 6, 2007 
Sep 10, 2007 
Sep 10, 2007 
Sep 11, 2007 
Sep 11, 2007 
Sep 13, 2007 
Sep 17, 2007 
Sep 17, 2007 
0

選擇要按分隔符分隔的列列表,然後單擊數據>文本到列。 在你的情況下,分隔符看起來像是一個空格。 這應該將MM DD YYYY分別寫入3個不同的列。

然後,您可以使用CONCATENATE函數來把他們重新走到一起,但忽略了與日期列

= CONCATENATE(「 - 」 ,,「 - 」)