Manchmal müssen Sie möglicherweise MySQL-Daten von einem Datentyp in einen anderen umwandeln. So typisieren Sie Daten mit der MySQL CAST-Funktion.
Wie man Cast in MySQL eingibt
Wir werden uns ansehen, wie MySQL CAST funktioniert und wie Daten mit der MySQL CAST-Funktion typisiert werden.
Hier ist die Syntax der MySQL CAST-Funktion
CAST(data as data_type)
MySQL CAST erfordert zwei Eingaben – die zu typisierenden Daten und den Datentyp (dezimal, char usw.), in den Sie diese Daten konvertieren möchten. Sie können Daten in die Datentypen BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, UNSIGNED umwandeln.
Sie können Daten wie unten gezeigt als Literalwert angeben
CAST(1 as char)
ODER
Sie können Daten als Spaltennamen (z. B. ID)
verwendenCAST(id as char)
Bonus-Lesetext:MySQL-Rollback-Abfrage
Hier ist eine Beispiel-SQL-Abfrage, bei der wir in der SELECT-Klausel ein int in ein char umwandeln
mysql> select cast(1 as char) from sales;
Sie können MySQL CAST auch in der WHERE-Klausel verwenden. Hier wandeln wir den String in der WHERE-Klausel in int um.
mysql> select * from sales where id=CAST('213' as int);
Bonus-Lesetext:So verwenden Sie die MySQL-Rollup-Abfrage
MySQL-CAST-Beispiele
Sehen wir uns einige gängige Beispiele der CAST-Funktion von MySQL an.
MySQL CAST als Int
Hier ist ein Beispiel, wie MySQL Float in eine vorzeichenbehaftete Ganzzahl umwandelt. Bitte beachten Sie, dass Sie nur in UNSIGNED- oder SIGNED-Integer-Datentypen umwandeln können. Sie können INT nicht in der CAST-Funktion verwenden.
mysql> select cast(1.23 as signed); +------------------------+ | cast(1.23 as signed) | +------------------------+ | 1 | +------------------------+
MySQL CAST als Dezimalzahl
Hier erfahren Sie, wie Sie als Dezimalzahl umwandeln
mysql> select cast(1.23 as decimal(4,3)); +----------------------------+ | cast(1.23 as decimal(4,3)) | +----------------------------+ | 1.230 | +----------------------------+
Bonuslektüre:So überprüfen Sie die MySQL-Version
MySQL-CAST als Float
MySQL CAST unterstützt keine Umwandlung als Float. Sie müssen wie oben gezeigt als Dezimalzahl umwandeln.
mysql> select cast(2.234 as decimal(5,3)); +-----------------------------+ | cast(2.234 as decimal(5,3)) | +-----------------------------+ | 2.234 | +-----------------------------+
MySQL-Cast als Varchar
MySQL CAST unterstützt keine Umwandlung als varchar. Sie müssen wie unten gezeigt als Char wirken.
mysql> select cast('xyz' as char); +---------------------+ | cast('xyz' as char) | +---------------------+ | xyz | +---------------------+
MySQL DateTime bis heute
So wandeln Sie datetime to date um.
mysql> select cast('2020-01-01 13:30:00' as date); +-------------------------------------+ | cast('2020-01-01 13:30:00' as date) | +-------------------------------------+ | 2020-01-01 | +-------------------------------------+
Ubiq macht es einfach, Daten innerhalb von Minuten zu visualisieren und in Echtzeit-Dashboards zu überwachen. Probieren Sie es noch heute aus!