MySQL から Excel にテーブルデータをエクスポートする際の日時形式に関する簡単な説明

MySQL から Excel にテーブルデータをエクスポートする際の日時形式に関する簡単な説明

最近、MySQL を使用してテーブル データを Excel ファイルにエクスポートしました。MySQL の datetime タイプが Excel (Excel 2016) にエクスポートされ、Excel によって独自の既定の日付形式として認識されました。MySQL の形式は yyyy-mm-dd hh:mm:ss のようなものです。しかし、Excel では yyyy/m/dh:mm になり、見慣れません。もちろん、Excel セル形式を設定することで、カスタム形式 yyyy-mm-dd hh:mm:ss に変更することもできますが、これには余分な手順が追加されます。MySQL で表示されるスタイルで、MySQL から Excel に直接エクスポートできますか?もちろん。

最初は、MySQL のフィールドが datetime 型なので、Excel にエクスポートした後、Excel が自動的に日付型に変換するので、MySQL の date_format 関数を使用して datetime を文字列に変換でき、問題はないだろうと考えました。結果は同じで、Excel もこの標準の日付文字列形式を日付形式として認識すると推測したため、エクスポート ステートメントに文字列の日付を追加して、推測が正しいことを確認しました。そこで、このデフォルトの日付形式を破って、見た目を同じにすることを考えました。date_format を使用して文字列に変換するときに、先頭にスペースを追加したところ、問題は完全に解決しました。

テストテーブルとテストデータ

テーブル「users」を作成します(
 `username` varchar(255) NOT NULL,
 `create_time` 日時 NOT NULL
)ENGINE=InnoDB デフォルト文字セット=utf8;
 
# テストデータを挿入 INSERT INTO `users`(`username`, `create_time`) VALUES 
 ('李思', '2018-10-11 15:54:23'),
 ('張三'、'2018-10-12 15:54:14');

Excel ステートメントをエクスポートします。DATE_FORMAT 関数の形式の前にスペースが追加されていることに注意してください (テーブル形式は utf8 であるため、Excel を開いた後にコードが文字化けしないようにするには、形式を gbk に変換する必要があります)

選択
 ユーザー名、
 DATE_FORMAT(create_time, '%Y-%m-%d %H:%i:%s') 
ユーザーから 
 出力ファイル '/tmp/user_info.xls' へ 
 文字セット gbk;

これで完了です。エクスポートされた Excel では日付が日付形式として認識されなくなり、テキスト形式になるため、希望するスタイルで日付を表示できます。

補足知識: Excel ファイルを Navicat Premium にインポートすると日付が 0000-00-00 になる問題の解決方法

質問

シナリオによっては、ローカル ファイルを Navicat にインポートする必要があります。今日遭遇した問題は、Excel ファイルを正常にインポートした後、Excel では元々正しかった日付フィールドが Navicate では「0000-00-00 00:00:00」になってしまったことです。これは本当に信じられません。

分析する

観察してみると、Excel では日付フィールドが完全に表示されないようだということがわかりました。例えば、本来は 2018/10/1 0:01:42 だったのですが、Excel では 01:42.0 と表示されていました。そこで、Excel で列のセルの書式を変更して Navicate に再インポートしてみたところ、問題は解決しました。詳細な解決策については以下を参照してください。

回避策

1. インポートする前に、Excel でセルの書式を変更し、カスタムに設定し、yyyy/m/dh:mm:ss と入力してファイルを保存します。

2. ファイルをNavicateに再インポートします。

上記の記事では、MySQL から Excel にテーブル データをエクスポートする際の日時形式の問題について簡単に説明しています。これは、エディターが皆さんと共有する内容のすべてです。参考になれば幸いです。また、123WORDPRESS.COM をサポートしていただければ幸いです。

以下もご興味があるかもしれません:
  • MySQL における Datetime と Timestamp の使用の概要
  • MySQL における datetime と timestamp の違いと選択
  • MySQL における datetime と timestamp の違いと使い方
  • MySQL で datetime 型のデフォルト値を設定する方法
  • MySQL データベースで datetime 型を作成する方法

<<:  シンプルなカルーセルの最も完全なコード分析を実装するJavaScript(ES6オブジェクト指向)

>>:  DockerでMySQLマスタースレーブ環境を構築する方法の詳しい説明

推薦する

mysql 8.0.12 winx64 のダウンロードとインストールのチュートリアル

MySQL 8.0.12のダウンロードとインストールのチュートリアルは参考までに、具体的な内容は次の...

HTML 基本構造_Powernode Java アカデミー

多くの場合、Web ページ開発を学ぶときに最初に印象に残るのは、html または htm サフィック...

Dockerの国内イメージソースを変更する方法

Dockerデーモンのアクセラレータを構成する設定ファイルから Docker を起動し、/etc/d...

CentOS SVN サーバーで複数のプロジェクトを管理する方法

一つの要求一般的に、企業には複数のプロジェクトがあります。SVN サーバーを設定した後は、プロジェク...

VMware10 での CentOS 7 のインストールと設定のチュートリアル

Ubuntu が今日のデスクトップ ユーザーの間で最も人気のある Linux オペレーティング シス...

mysql 結合クエリ (左結合、右結合、内部結合)

1. MySQLの一般的な接続INNER JOIN (内部結合、または等価結合): 2 つのテーブ...

ローカルでビルドした Docker イメージを Dockerhub に公開する方法

今日は、ローカルの Docker プロジェクト イメージを dockerhub に公開する方法を紹介...

最もよく使用されるJavaScriptイベントについて詳しく学ぶ

目次JavaScript イベント:よく使用されるイベント:イベントアクション要約するJavaScr...

小規模プログラムへのデータキャッシュ機構の応用と実装

ミニプログラムデータキャッシュ関連知識データ キャッシュ: データをキャッシュして、アプレットを終了...

ドラッグ位置プレビューを実装するネイティブJS

この記事では、要素をドラッグするときにプレビューを追加する小さなデモを紹介します。効果は次のとおりで...

MySQLインデックス最適化分析に関する簡単な説明

記述した SQL クエリが遅いのはなぜですか?作成したインデックスが頻繁に失敗するのはなぜですか?こ...

iframeを使用してページを呼び出すとページがキャッシュされるかどうかの簡単な分析

最近、毎日変更されるページを iframe を使用して呼び出す必要があるプロジェクトがあります。その...

Linux の cut コマンドの説明

Linux や Unix の cut コマンドは、ファイルの各行から一部を切り取って標準出力に出力す...

uniapp パッケージ化されたアプレット レーダー チャート コンポーネントの完全なコード

効果画像:実装コードは以下のとおりですビュー <canvas id="radar-c...

React.cloneElement の使い方の詳しい説明

目次cloneElementの役割使用シナリオ新しい小道具を追加するプロップを変更するイベントカスタ...