Eine kurze Erläuterung des Datums-/Uhrzeitformats beim Exportieren von Tabellendaten von MySQL nach Excel

Eine kurze Erläuterung des Datums-/Uhrzeitformats beim Exportieren von Tabellendaten von MySQL nach Excel

Kürzlich habe ich MySQL verwendet, um Tabellendaten in eine Excel-Datei zu exportieren. Der Datums-/Uhrzeittyp in MySQL wurde nach Excel (Excel 2016) exportiert und von Excel als sein eigenes Standarddatumsformat erkannt. Das Format in MySQL ist wie yyyy-mm-dd hh:mm:ss, aber es wird in Excel zu yyyy/m/dh:mm, was nicht vertraut aussieht. Natürlich kann ich es in ein benutzerdefiniertes Format yyyy-mm-dd hh:mm:ss ändern, indem ich das Excel-Zellenformat einstelle, aber das fügt einen zusätzlichen Schritt hinzu. Kann ich direkt von MySQL nach Excel im von MySQL angezeigten Stil exportieren? Sicher.

Zuerst nahm ich an, dass Excel das Feld in MySQL automatisch in den Datumstyp konvertierte, nachdem es nach Excel exportiert wurde, da es sich um ein Datumsfeld in MySQL handelt. Daher konnte ich das Datum und die Uhrzeit mithilfe der date_format-Funktion von MySQL in eine Zeichenfolge konvertieren und dachte, dass dies kein Problem sein würde. Das Ergebnis war dasselbe und ich nahm an, dass Excel dieses standardmäßige Datumszeichenfolgenformat auch als Datumsformat erkennen würde. Daher fügte ich der Exportanweisung eine Datumszeichenfolge hinzu, was meine Annahme bestätigte. Also dachte ich darüber nach, dieses Standarddatumsformat zu ändern, es aber gleich aussehen zu lassen. Also fügte ich bei der Konvertierung in eine Zeichenfolge mit date_format ein Leerzeichen davor ein, was das Problem perfekt löste.

Testtabellen und Testdaten

CREATE TABLE `Benutzer` (
 `Benutzername` varchar(255) NICHT NULL,
 `create_time` Datum/Uhrzeit NICHT NULL
)ENGINE=InnoDB STANDARD-CHARSET=utf8;
 
# Testdaten einfügen INSERT INTO `users`(`username`, `create_time`) VALUES 
 ('Li Si', '2018-10-11 15:54:23'),
 ('Zhang San', '12.10.2018 15:54:14');

Exportieren Sie die Excel-Anweisung. Beachten Sie, dass in der Funktion DATE_FORMAT vor dem Format ein Leerzeichen hinzugefügt wird (da das Tabellenformat UTF-8 ist, muss das Format in GBK konvertiert werden, um sicherzustellen, dass nach dem Öffnen von Excel kein verstümmelter Code vorhanden ist).

WÄHLEN
 Benutzername,
 DATE_FORMAT(Erstellungszeit, ' %Y-%m-%d %H:%i:%s' ) 
VON Benutzern 
 INTO OUTFILE '/tmp/user_info.xls' 
 Zeichensatz gbk;

Sie sind fertig. Das exportierte Excel erkennt das Datum nicht mehr als Datumsformat, sondern liegt im Textformat vor, sodass Sie das Datum im gewünschten Stil anzeigen können.

Ergänzendes Wissen: Lösung für das Problem, dass beim Importieren von Excel-Dateien in Navicat Premium das Datum 0000-00-00 wird

Frage

In einigen Szenarien müssen Sie lokale Dateien in Navicat importieren. Das Problem, auf das ich heute gestoßen bin, ist, dass nach dem erfolgreichen Importieren der Excel-Datei ein Datumsfeld, das in Excel ursprünglich korrekt war, in Navicate zu „0000-00-00 00:00:00“ wurde, was wirklich unglaublich ist.

analysieren

Nach der Beobachtung stellte sich heraus, dass das Datumsfeld in Excel nicht vollständig angezeigt zu werden schien. Beispielsweise war es ursprünglich 2018/10/1 0:01:42, aber es wurde in Excel als 01:42.0 angezeigt. Also versuchte ich, das Zellenformat der Spalte in Excel zu ändern und es erneut in Navicate zu importieren, und das Problem war gelöst. Detaillierte Lösungen finden Sie weiter unten.

Problemumgehung

1. Ändern Sie vor dem Importieren das Zellenformat in Excel, stellen Sie es auf „Benutzerdefiniert“ ein, geben Sie yyyy/m/dh:mm:ss ein und speichern Sie die Datei.

2. Importieren Sie die Datei erneut in Navicate.

Der obige Artikel behandelt kurz das Problem mit dem Datums-/Uhrzeitformat beim Exportieren von Tabellendaten von MySQL nach Excel. Dies ist der gesamte Inhalt, den der Editor mit Ihnen teilt. Ich hoffe, er kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden.

Das könnte Sie auch interessieren:
  • Zusammenfassung der Verwendung von Datetime und Timestamp in MySQL
  • Der Unterschied und die Wahl zwischen Datum und Uhrzeit und Zeitstempel in MySQL
  • Der Unterschied und die Verwendung von Datum/Uhrzeit und Zeitstempel in MySQL
  • So legen Sie den Standardwert für den Datums-/Uhrzeittyp in MySQL fest
  • So erstellen Sie einen Datetime-Typ in einer MySQL-Datenbank

<<:  JavaScript zur Implementierung der umfassendsten Codeanalyse eines einfachen Karussells (objektorientiert ES6)

>>:  Detaillierte Erklärung zum Erstellen einer MySQL-Master-Slave-Umgebung mit Docker

Artikel empfehlen

JS-Implementierung eines Karussellbeispiels

In diesem Artikel wird der spezifische JS-Code zu...

Details zur Bündelung statischer Ressourcen ohne JavaScript

Inhaltsverzeichnis 1. Benutzerdefinierter Import ...

Analyse der Verwendung und des Prinzips der Docker Swarm-Clusterverwaltung

Schwarmclusterverwaltung Einführung Docker Swarm ...

So zeigen Sie Linux-SSH-Dienstinformationen und den Ausführungsstatus an

Es gibt viele Artikel zur SSH-Serverkonfiguration...

CSS3 realisiert die Animation des Shuttle-Sternenhimmels

Ergebnis: html <canvas id="Sternenfeld&qu...

Detaillierte Analyse des Reaktionsprinzips und der bidirektionalen Daten von Vue

Verstehen von object.defineProperty, um Reaktions...

30 kostenlose hochwertige englische Ribbon-Schriftarten

30 kostenlose englische Ribbon-Schriftarten in hoh...

js implementiert einen einzigen Klick zum Ändern der Tabelle

Pure js implementiert eine mit einem Klick bearbe...

Detaillierte grafische Erklärung der MySQL-Abfragesteuerungsanweisungen

MySQL-Abfrage-Steueranweisungen Felddeduplizierun...

Lösung für die Ineffektivität der flexiblen Layoutbreite in CSS3

In Projekten wird häufig das zweispaltige Layout ...