sql >> Databáze >  >> RDS >> Mysql

MySQL CAST vs CONVERT

MySQL CAST a MySQL CONVERT vám pomohou změnit typ dat v MySQL. Funkčně jsou velmi podobné s několika rozdíly. Zde je srovnání MySQL CAST vs CONVERT, které vám pomůže rozhodnout, který z nich použít.

MySQL CAST vs CONVERT

Zde je krok za krokem srovnání MySQL CAST vs CONVERT.

Funkčnost

MySQL CAST umožňuje přenášet data z jednoho datového typu na jiný datový typ. Zde je náš podrobný článek o MySQL CAST.

MySQL CONVERT také umožňuje převádět data z jednoho datového typu na jiný datový typ. Umožňuje také převést znakovou sadu dat na jinou znakovou sadu. MySQL CAST nelze použít ke změně znakové sady. Zde je náš podrobný článek o MySQL CONVERT.

K převodu datových typů literálů i sloupců můžete použít MySQL CAST i MySQL CONVERT.

Syntaxe

Zde je syntaxe funkce MySQL CAST

CAST(data as data_type)

MySQL CAST vyžaduje dva vstupy – data, která mají být přetypována, a datový typ (desítkové, char, atd.), na který chcete tato data převést. Data můžete přenášet do datových typů BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, UNSIGNED.

Data můžete poskytnout jako doslovnou hodnotu, jak je uvedeno níže

CAST(1 as char)

NEBO

Data můžete zadat jako název sloupce (např. id)

CAST(id as char)

Bonusové čtení:MySQL Rollback Query

Zde je syntaxe funkce MySQL CONVERT

CONVERT(input_value, data_type)

Ve výše uvedené funkci musíte zadat hodnotu input_value jako literál nebo název sloupce a datový_typ, na který chcete tato data převést. Stejně jako MySQL CAST můžete přenášet data do datových typů BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, UNSIGNED.

Zde je například návod, jak převést doslovnou hodnotu na jiný datový typ

CONVERT(1, char)

a zde je návod, jak převést sloupec (např. id) na jiný datový typ

CONVERT(id, char)

Zde je syntaxe MySQL CONVERT pro převod znakových sad

CONVERT(input_value USING character_set)

Ve výše uvedené funkci musíte zadat input_value jako doslovný řetězec nebo název sloupce a znakovou sadu, na kterou chcete tato data převést.

Zde je příklad, jak přenášet jako latin1

convert('test string' using 'latin1')

Bonusové čtení:Jak používat MySQL Rollup

Podporované datové typy

MySQL CAST i MySQL CONVERT podporují převod dat pouze do datových typů BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, UNSIGNED. Jiné datové typy nejsou podporovány.

Specifikace ANSI SQL

MySQL CAST je součástí specifikace ANSI SQL, zatímco MySQL CONVERT není součástí specifikace ANSI SQL.

Jak již bylo zmíněno dříve, MySQL CAST a MySQL CONVERT jsou podobné a lze je ve většině případů používat zaměnitelně.

Ubiq usnadňuje vizualizaci dat během několika minut a sledování na řídicích panelech v reálném čase. Vyzkoušejte to ještě dnes!

  1. Jak LocalTime() funguje v PostgreSQL

  2. Nejlepší nástroje GUI pro PostgreSQL

  3. Jak určit automaticky vygenerovaný primární klíč použitý jako cizí klíč pro jinou tabulku

  4. Odhad mohutnosti predikátu na výrazu COUNT