MySQL CAST och MySQL CONVERT hjälper dig båda att ändra datatyp i MySQL. De är väldigt lika i funktionalitet med några skillnader. Här är jämförelsen MySQL CAST vs CONVERT för att hjälpa dig att bestämma vilken du ska använda.
MySQL CAST vs CONVERT
Här är en steg-för-steg-jämförelse mellan MySQL CAST och CONVERT.
Funktionalitet
MySQL CAST låter dig casta data från en datatyp till en annan datatyp. Här är vår detaljerade artikel om MySQL CAST.
MySQL CONVERT låter dig också konvertera data från en datatyp till en annan datatyp. Det låter dig också konvertera teckenuppsättning data till en annan teckenuppsättning. MySQL CAST kan inte användas för att ändra teckenuppsättning. Här är vår detaljerade artikel om MySQL CONVERT.
Du kan använda MySQL CAST såväl som MySQL CONVERT för att konvertera datatyp av bokstaver såväl som kolumner.
Syntax
Här är syntaxen för MySQL CAST-funktionen
CAST(data as data_type)
MySQL CAST kräver två ingångar - data som ska typcastas och datatypen (decimal, tecken, etc) som du vill konvertera denna data till. Du kan casta data till datatyperna BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, OSIGNED.
Du kan tillhandahålla data som ett bokstavligt värde som visas nedan
CAST(1 as char)
ELLER
Du kan data som ett kolumnnamn (t.ex. id)
CAST(id as char)
Bonusläsning:MySQL Återställningsfråga
Här är syntaxen för MySQL CONVERT-funktionen
CONVERT(input_value, data_type)
I ovanstående funktion måste du ange input_value som bokstavligt eller kolumnnamn och data_type som du vill konvertera denna data till. Precis som MySQL CAST kan du casta data till BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, ONSIGNED datatyper.
Till exempel, så här konverterar du bokstavligt värde till en annan datatyp
CONVERT(1, char)
och så här konverterar du en kolumn (t.ex. id) till en annan datatyp
CONVERT(id, char)
Här är MySQL CONVERT-syntax för att konvertera teckenuppsättningar
CONVERT(input_value USING character_set)
I funktionen ovan måste du ange input_value som bokstavlig sträng eller kolumnnamn och teckenuppsättning som du vill konvertera denna data till.
Här är ett exempel på hur man castar som latin1
convert('test string' using 'latin1')
Bonusläs:Hur man använder MySQL Rollup
Datatyper som stöds
Både MySQL CAST och MySQL CONVERT stöder endast datakonvertering till datatyperna BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, OSIGNED. Andra datatyper stöds inte.
ANSI SQL-specifikation
MySQL CAST är en del av ANSI SQL-specifikationen medan MySQL CONVERT inte är en del av ANSI SQL-specifikationen.
Som tidigare nämnts MySQL CAST och MySQL CONVERT är lika och kan användas omväxlande i de flesta fall.
Ubiq gör det enkelt att visualisera data på några minuter och övervaka i realtidsinstrumentpaneler. Prova det idag!