MySQLCASTとMySQLCONVERTはどちらも、MySQLのデータ型を変更するのに役立ちます。機能は非常に似ていますが、いくつかの違いがあります。これは、MySQL CASTとCONVERTの比較で、どちらを使用するかを決定するのに役立ちます。
MySQLCASTとCONVERT
これがMySQLCASTとCONVERTの段階的な比較です。
機能性
MySQL CASTを使用すると、あるデータ型から別のデータ型にデータをキャストできます。これがMySQLCASTに関する詳細な記事です。
MySQL CONVERTでは、データをあるデータ型から別のデータ型に変換することもできます。また、データの文字セットを別の文字セットに変換することもできます。 MySQLCASTを使用して文字セットを変更することはできません。これがMySQLCONVERTに関する詳細な記事です。
MySQLCASTとMySQLCONVERTを使用して、リテラルと列のデータ型を変換できます。
構文
MySQLCAST関数の構文は次のとおりです
CAST(data as data_type)
MySQL CASTには、タイプキャストされるデータと、このデータを変換するデータ型(decimal、charなど)の2つの入力が必要です。データをBINARY、CHAR、DATE、DATETIME、TIME、DECIMAL、SIGNED、UNSIGNEDのデータ型にキャストできます。
以下に示すように、データをリテラル値として提供できます
CAST(1 as char)
または
列名(IDなど)としてデータ化できます
CAST(id as char)
ボーナス読み取り:MySQLロールバッククエリ
MySQLCONVERT関数の構文は次のとおりです
CONVERT(input_value, data_type)
上記の関数では、リテラルまたは列名としてinput_valueを指定し、このデータを変換するdata_typeを指定する必要があります。 MySQL CASTと同様に、データをBINARY、CHAR、DATE、DATETIME、TIME、DECIMAL、SIGNED、UNSIGNEDのデータ型にキャストできます。
たとえば、リテラル値を別のデータ型に変換する方法は次のとおりです
CONVERT(1, char)
列(IDなど)を別のデータ型に変換する方法は次のとおりです
CONVERT(id, char)
文字セットを変換するためのMySQLCONVERT構文は次のとおりです
CONVERT(input_value USING character_set)
上記の関数では、リテラル文字列または列名としてinput_valueを指定し、このデータを変換するcharacter_setを指定する必要があります。
latin1としてキャストする方法の例を次に示します
convert('test string' using 'latin1')
ボーナスリード:MySQLロールアップの使用方法
サポートされているデータ型
MySQLCASTとMySQLCONVERTはどちらも、BINARY、CHAR、DATE、DATETIME、TIME、DECIMAL、SIGNED、UNSIGNEDデータ型へのデータ変換のみをサポートしています。他のデータ型はサポートされていません。
ANSISQL仕様
MySQLCASTはANSISQL仕様の一部ですが、MySQLCONVERTはANSISQL仕様の一部ではありません。
前述のように、MySQLCASTとMySQLCONVERTは類似しており、ほとんどの場合、互換的に使用できます。
Ubiqを使用すると、データを数分で簡単に視覚化し、リアルタイムのダッシュボードで監視できます。今日お試しください。