1

2013 年 3 月 21 日の時刻形式 41354 で保存された日付を含む大きな CSV ファイルがあります。

MS Excelでは問題なく表示されますが、日付YYYY-mm-ddにフォーマットできるためです

ただし、データベースにアップロードされると、0000:00:00 のような日付が表示され、phpymyadmin で各セルを押した場合にのみ、通常の日付に変換されます

を使用してファイルをロードしようとしました

SET date = STR_TO_DATE(@date_conv, '%Y/%m/%d')

複数のソリューションも試しましたが、助けにはなりませんでした。

編集

以下の表

CREATE TABLE table1 (
  date date DEFAULT NULL
);

新しい 1.csv ファイルを作成し、ms Excel で A1 セルに 41354 を作成し、日付にフォーマットすると、2013 年 3 月 21 日になります。

DBにアップロードして、日付が0000:00:00であることを確認します

何かアドバイス ?

4

1 に答える 1

1

この値の新しい日付を作成する必要があります: + 日 (41354) から '1900-01-01'.

たとえば(編集) -

ファイル file.csv:

41354

テーブル:

CREATE TABLE table1 (
  date date DEFAULT NULL
);

クエリ:

LOAD DATA INFILE 'file.csv' INTO TABLE table1(@var)
  SET date = DATE('1900-01-01') + INTERVAL @var DAY;

出力:

SELECT * FROM table1;

+------------+
| date       |
+------------+
| 2013-03-23 |
+------------+
于 2013-03-22T13:47:06.250 に答える