Zusammenfassung der in MySQL häufig verwendeten Typkonvertierungsfunktionen (empfohlen)

Zusammenfassung der in MySQL häufig verwendeten Typkonvertierungsfunktionen (empfohlen)

1. Concat-Funktion.

Häufig verwendete Verbindungszeichenfolge: Concat-Funktion. Beispielsweise die ähnliche Abfrage der SQL-Abfragebedingung UND c.name wie concat(#{param.name},'%')

Die concat-Funktion wird häufig verwendet, um Int in varchar umzuwandeln. Beispielsweise erhält concat(8,'0') die Zeichenfolge '80'.

2. Cast-Funktion; CONVERT-Funktion.

Verwendung: CAST(Ausdruck AS Typ), CONVERT(Ausdruck, Typ), CONVERT(Ausdruck USING Transcoding_Name).

Wählen Sie "Konvertieren" aus ('abc' unter Verwendung von utf8);

Konvertieren Sie varchar in Int mit cast(str as unsigned). str ist ein String vom Typ varchar.

Beispielsweise eine häufig verwendete Prozentumrechnung:

Wählen Sie Cast((1/3)*100 als UNSIGNED) als Prozentsatz vom Dual;

Ergebnis: 33

Parameter der MySQL-Typkonvertierungsfunktion: CAST(xxx AS-Typ), CONVERT(xxx, Typ)
Der Typ kann einen der folgenden Werte haben:
BINÄR[(N)]
CHAR[(N)]
DATUM
DATETIME
DEZIMAL
SIGNED [GANZZAHL]
ZEIT
UNSIGNED [GANZZAHL]

Ganzzahl: SIGNED
Vorzeichenlose Ganzzahl: UNSIGNED
Binär, mit dem binären Präfix: BINARY
Zeichentyp, kann Parameter annehmen: CHAR()
Datum: DATE
Zeit: ZEIT
Datums- und Uhrzeittyp: DATETIME
Gleitkommazahlen: DECIMAL

mysql> SELECT BINARY 'a' = 'A';

    -> 0

3. WENN-Funktion

In MySQL ist if eine Funktion und kein Befehl

WENN(Ausdruck1,Ausdruck2,Ausdruck3)
Wenn expr1 wahr ist (expr1 <> 0 und expr1 <> NULL), dann gibt IF() expr2 zurück, andernfalls expr3. IF() gibt je nach Kontext eine Zahl oder eine Zeichenfolge zurück:

mysql> AUSWÄHLEN, WENN (1>2,2,3);
  -> 3
mysql> AUSWÄHLEN, WENN(1<2,'ja','nein');
  -> 'ja'
mysql> AUSWÄHLEN, WENN (STRCMP('test', 'test1'), 'nein', 'ja');
  -> 'nein'

Wenn expr2 oder expr3 explizit NULL ist, ist der Rückgabetyp der IF()-Funktion der Typ der Nicht-NULL-Spalte. (Diese Option ist neu in MySQL 4.0.3). expr1 wird als Integer-Wert ausgewertet, das heißt, wenn ein Gleitkomma- oder String-Wert getestet wird, muss ein Vergleich durchgeführt werden:

mysql> AUSWÄHLEN, WENN (0,1,1,0);
 -> 0
mysql> AUSWÄHLEN, WENN (0,1<>0,1,0);
 -> 1

Im ersten Fall oben gibt IF(0,1) 0 zurück, da 0,1 in einen ganzzahligen Wert umgewandelt wird und das Ergebnis des Tests von IF(0) zurückgibt. Dies entspricht möglicherweise nicht Ihren Erwartungen. Im zweiten Fall prüft der Vergleich, ob die ursprüngliche Gleitkommazahl ein von Null verschiedener Wert ist. Das Ergebnis des Vergleichs wird als Ganzzahl verwendet. Der Standard-IF()-Rückgabewerttyp (der wichtig ist, wenn das Ergebnis in einer temporären Tabelle gespeichert wird) wird in MySQL 3.23 wie folgt bestimmt:

Der Ausdruck (expr2) oder Ausdruck (expr3) gibt eine Zeichenfolge zurück

Der Ausdruck (expr2) oder Ausdruck (expr3) gibt einen Gleitkommawert zurück.

Der Ausdruck (expr2) oder Ausdruck (expr3) gibt eine Ganzzahl zurück.

Wenn sowohl expr2 als auch expr3 Zeichenfolgen sind und bei beiden Zeichenfolgen die Groß-/Kleinschreibung nicht beachtet wird, wird beim Rückgabewert ebenfalls die Groß-/Kleinschreibung nicht beachtet (Stand MySQL 3.23.51).

Oben finden Sie eine Zusammenfassung der häufig verwendeten MySQL-Typkonvertierungsfunktionen, die ich Ihnen vorgestellt habe. Ich hoffe, dass sie Ihnen hilfreich sein werden. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!

Das könnte Sie auch interessieren:
  • Beheben von Problemen mit impliziter MySQL-Konvertierung
  • Zusammenfassung der impliziten Typkonvertierung von MySQL
  • MySQL implizite Typkonvertierungsfallen und Regeln
  • MySQL-Zeitdifferenzfunktionen (TIMESTAMPDIFF, DATEDIFF), Funktionen zur Berechnung von Datumsumrechnungen (date_add, day, date_format, str_to_date)
  • So konvertieren Sie MySQL-Datenbankdaten mit Python in JSON-Daten
  • MySQL-Datumsfunktionen und Datumskonvertierungs- und -formatierungsfunktionen
  • Eine kurze Analyse der expliziten Typkonvertierung von MySQL
  • MySQL NULL-Datenkonvertierungsmethode (unbedingt lesen)
  • Sprechen Sie über implizite Konvertierung in MySQL

<<:  So implementieren Sie einen Kennwortstärke-Detektor in React

>>:  So führen Sie Hadoop aus und erstellen Images in Docker

Artikel empfehlen

Der vollständige Code der im Uniapp-Applet enthaltenen Radardiagrammkomponente

Effektbild: Der Implementierungscode lautet wie f...

Anweisungen zur Verwendung des HTML-Tags dl dt dd

Grundaufbau: Code kopieren Der Code lautet wie fol...

Installations-Tutorial für VMware Workstation 12 Pro Linux

Dieser Artikel zeichnet das Linux-Tutorial zur In...

Verständnis und Anwendungsszenarien von Enumerationstypen in TypeScript

Inhaltsverzeichnis 1. Was ist 2. Verwendung Numer...

SQL-Fuzzy-Abfragebericht: ORA-00909: Lösung: Ungültige Anzahl von Parametern

Bei Verwendung einer Oracle-Datenbank für Fuzzy-A...

Frameset über Iframe in Body einfügen

Da Frameset und Body auf derselben Ebene liegen, k...

jQuery implementiert einen einfachen Karusselleffekt

Hallo zusammen, heute werde ich die Implementieru...

Tutorial zur Installation und Verwendung des Elasticsearch-Tools cerebro

Cerebro ist eine Weiterentwicklung des Elasticsea...

HTML-Maus-CSS-Steuerung

Im Allgemeinen wird die Maus als nach oben gericht...

Javascript, um den Effekt des Schließens von Anzeigen zu erzielen

Hier ist eine Fallstudie zu Ihrer Information, wi...

Linux-Tutorial zum Ersetzen von Zeichenfolgen mit dem Befehl sed

Um eine Zeichenfolge zu ersetzen, müssen wir das ...

Detaillierte Einführung und Verwendungsbeispiele für Map-Tag-Parameter

Karten-Tags müssen paarweise vorkommen, d. h. <...

Detaillierte Erläuterung der asynchronen Axios-Kommunikation in Vue

1. Zuerst erstellen wir eine JSON-Datei zur inter...