Implementierung der MySQL-Datentypkonvertierung

Implementierung der MySQL-Datentypkonvertierung

1. Problem

Es gibt eine Tabelle wie unten gezeigt. Wir müssen die Daten finden, deren Ergebniswert größer als der Referenzwert ist.

Dann haben wir die folgende SQL-Abfrage geschrieben

WÄHLEN Sie i.Ergebnis,i.Referenz_hoch FROM Berichtselement i
LEFT JOIN Bericht r ON r.id=i.report_id 
WO r.org_id=54 UND r.report_status=1
UND r.add_date ZWISCHEN '2020-12-01' UND '2020-12-28' 
UND i.Referenz_Hoch<>'' UND i.Ergebnis<>''
UND i.Ergebnis > i.Referenz_hoch;

Führen Sie es dann aus, um die Ergebnisse anzuzeigen

Die Abfrageergebnisse sind nicht wie erwartet. Es gibt viele Daten, die die Abfragebedingung i.result > i.reference_high nicht erfüllen

2. Positionierung

Bei der Betrachtung der SQL-Anweisung zum Erstellen der Tabelle haben wir festgestellt, dass „result“ und „reference_high“ vom Typ „varchar“ und nicht vom numerischen Typ sind. Die Abfrageergebnisse entsprachen daher nicht den Erwartungen.

3. Lösung

Methode 1: Ändern Sie den Datentyp des Tabellenfelds in numerisch

Im geschäftlichen Anwendungsszenario können jedoch beide Felder nicht numerische Eingaben enthalten, sodass dies nicht durchführbar ist.

Methode 2: Ändern Sie die Abfrageanweisung und konvertieren Sie den Datentyp in einen numerischen Typ

Nehmen Sie die obigen Daten als Beispiel

1. Implizite Konvertierung: Addieren Sie 0 zum zu vergleichenden String und vergleichen Sie ihn anschließend. Die Daten werden erfolgreich gefiltert.

2. Konvertierung anzeigen

(1) Verwenden Sie die Konvertierungsfunktion: Konvertieren Sie die Zeichenfolge in eine Gleitkommazahl, vergleichen Sie sie und die Daten werden erfolgreich gefiltert

(2) Verwenden Sie die Cast-Funktion: Fast dasselbe wie die Konvertierungsfunktion

Dies ist das Ende dieses Artikels über die Implementierung der MySQL-Datentypkonvertierung. Weitere relevante Inhalte zur MySQL-Datentypkonvertierung finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung der MySql-Datentyp-Tutorialbeispiele
  • Allgemeine Datentypen in MySQL 5.7
  • MySQL wählt den passenden Datentyp für die ID
  • Grundsätze zur Auswahl von MySQL-Datentypen
  • Implementierung der MySQL-Dezimaldatentypkonvertierung
  • Detaillierte Erklärung zur Verwendung des MySQL-Datentyps DECIMAL
  • Detaillierte Erläuterung des Dezimal-Padding-Problems des Dezimal-Datentyps in MySQL
  • Details zum MySQL-Datentyp

<<:  So stellen Sie Solidity-Smart-Contracts mit ethers.js bereit

>>:  Eine vollständige Anleitung zum Löschen von Floats in CSS (Zusammenfassung)

Artikel empfehlen

Detaillierte Einführung in die Grundkonzepte von JS

Inhaltsverzeichnis 1. Eigenschaften von JS 1.1 Mu...

Gängige Master-Slave-Replikationsarchitekturen in MySQL 4

Inhaltsverzeichnis Replikationsarchitektur mit ei...

Implementierung der Codeaufteilung von Webpack3+React16

Projekthintergrund Seit kurzem gibt es ein Projek...

So stellen Sie Rancher mit Docker bereit (keine Fallstricke)

Vor der Inbetriebnahme unbedingt lesen: Hinweis: ...

So veröffentlichen Sie ein lokal erstelltes Docker-Image auf Dockerhub

Heute zeigen wir Ihnen, wie Sie das lokale Docker...

MySQL-Cursor-Prinzip und Analyse von Anwendungsbeispielen

Dieser Artikel erläutert anhand von Beispielen di...

Webdesign-Tutorial (7): Verbesserung der Webdesign-Effizienz

<br />Vorheriger Artikel: Webdesign-Tutorial...

So ändern Sie die Kodierung in MySQL Version 5.7 unter Windows auf UTF-8

Vorwort Ich habe gerade angefangen, MySQL zu lern...

Detaillierte Erklärung zum Abrufen der IP-Adresse eines Docker-Containers

1. Nach dem Betreten des Containers Katze /etc/ho...

Einfacher CSS-Textanimationseffekt

Ergebnisse erzielen Implementierungscode html <...

So installieren Sie MySQL für Anfänger (erwiesenermaßen effektiv)

1. Software-Download MySQL-Download und -Installa...