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

Implementieren der Prioritätswarteschlange in JavaScript

Inhaltsverzeichnis 1. Einführung in die Priorität...

Detaillierte Erläuterung der MySQL-Transaktionsisolationsebene und des MVCC

Inhaltsverzeichnis Transaktionsisolationsebene Be...

Details zur MySQL-Datenbankarchitektur

Inhaltsverzeichnis 1. MySQL-Architektur 2. Netzwe...

MySQL Serie 13 MySQL-Replikation

Inhaltsverzeichnis 1. Mit der MySQL-Replikation v...

Analyse der Probleme und Lösungen beim Importieren großer Datenmengen in MySQL

Im Projekt stoßen wir häufig auf das Problem, gro...

Können Sie alle Testfragen zum Erstellen der Webseite beantworten?

Fragen zum Webdesign. Können Sie alle beantworten...

WeChat-Applet-Beispiel für die direkte Verwendung von Funktionen in {{ }}

Vorwort Bei der WeChat-Applet-Entwicklung (native...

Verwenden Sie reines CSS, um das A-Tag in HTML ohne JavaScript zu deaktivieren

Tatsächlich ist dieses Problem bereits aufgetreten...

Wie man die Idee von Vue nutzt, um einen Speicher zu kapseln

Inhaltsverzeichnis Hintergrund Funktion Zweck Ide...

So implementieren Sie die Vervollständigung leerer Zellen in HTML-Tabellen

Als ich mir selbst die Webentwicklung beibrachte,...