Czasami może być konieczne przekonwertowanie danych w MySQL lub wpisanie danych rzutowania w MySQL. Oto jak przekonwertować dane z jednego typu danych na inny za pomocą funkcji MySQL CONVERT. Może być również używany do konwersji danych z jednego zestawu znaków na inny.
Jak konwertować dane w MySQL
Oto kroki, aby przekonwertować dane w MySQL za pomocą funkcji MySQL CONVERT. Oto składnia funkcji MySQL CONVERT
CONVERT(input_value, data_type)
W powyższej funkcji musisz podać input_value jako literał ciągu lub nazwę kolumny oraz data_type, na który chcesz przekonwertować te dane. Podobnie jak MySQL CAST, możesz rzutować dane na typy danych BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, UNSIGNED.
Na przykład, oto jak przekonwertować wartość dosłowną na inny typ danych
CONVERT(1, char)
a oto jak przekonwertować kolumnę (np. id) na inny typ danych
CONVERT(id, char)
Oto składnia MySQL CONVERT do konwersji zestawów znaków
CONVERT(input_value USING character_set)
W powyższej funkcji musisz podać input_value jako dosłowny ciąg znaków lub nazwę kolumny oraz zestaw znaków, na który chcesz przekonwertować te dane.
Oto przykład przesyłania jako latin1
mysql> select convert('test string' using 'latin1'); +---------------------------------------+ | convert('test string' using 'latin1') | +---------------------------------------+ | test string | +---------------------------------------+
Przeczytaj bonus:Jak wpisać Cast w MySQL
Przykłady konwersji MySQL
Spójrzmy na kilka przykładów funkcji MySQL CONVERT.
MySQL CONVERT Ciąg do daty
Oto jak przekonwertować ciąg na datę
mysql> select convert('2020-08-01',date); +----------------------------+ | convert('2020-08-01',date) | +----------------------------+ | 2020-08-01 | +----------------------------+
Przeczytaj bonus:Zapytanie o wycofanie MySQL
MySQL CONVERT Ciąg znaków na dziesiętny
Oto jak przekonwertować ciąg na dziesiętny
mysql> select convert('1.234',decimal(4,3)); +-------------------------------+ | convert('1.234',decimal(4,3)) | +-------------------------------+ | 1.234 | +-------------------------------+
Przeczytaj bonus:Jak korzystać z pakietu zbiorczego MySQL
MySQL CONVERT Ciąg znaków na podwójny
MySQL nie obsługuje konwersji na podwójny typ danych. Będziesz musiał przekonwertować łańcuch na dziesiętny.
mysql> select convert('2.134',decimal(4,3)); +-------------------------------+ | convert('2.134',decimal(4,3)) | +-------------------------------+ | 2.134 | +-------------------------------+
MySQL CONVERT String to Float
Ponownie, MySQL nie obsługuje konwersji na typ danych zmiennoprzecinkowych. Będziesz musiał przekonwertować łańcuch na dziesiętny.
mysql> select convert('2.134',decimal(4,3)); +-------------------------------+ | convert('2.134',decimal(4,3)) | +-------------------------------+ | 2.134 | +-------------------------------+
Przeczytaj bonus:Jak wyłączyć sprawdzanie klucza obcego w MySQL
MySQL CONVERT Ciąg do int
Oto przykład konwersji ciągu znaków na liczbę całkowitą ze znakiem MySQL. Pamiętaj, że możesz rzutować tylko na typy danych całkowitych UNSIGNED lub SIGNED. Nie możesz użyć INT w funkcji CAST.
mysql> select cast('123' as signed); +------------------------+ | cast('123' as signed) | +------------------------+ | 1 | +------------------------+
MySQL CONVERT Data i godzina do tej pory
Oto jak przekonwertować datę i godzinę na datę. Możesz go również użyć do przekonwertowania znacznika czasu na datę.
mysql> select convert('2020-08-01 13:00:00',date); +-------------------------------------+ | convert('2020-08-01 13:00:00',date) | +-------------------------------------+ | 2020-08-01 | +-------------------------------------+
Przeczytaj bonus:Jak sprawdzić wersję MySQL
MySQL CONVERT Blob na tekst
MySQL CONVERT nie obsługuje konwersji na typ danych tekstowych. Musisz przekonwertować bloga na char. Oto przykład konwersji małego blobu na znak.
mysql> select convert('wewewwbwbddwg',char); +-------------------------------+ | convert('wewewwbwbddwg',char) | +-------------------------------+ | wewewwbwbddwg | +-------------------------------+
Mamy nadzieję, że teraz możesz łatwo konwertować dane w MySQL.
Ubiq ułatwia wizualizację danych w ciągu kilku minut i monitorowanie w pulpitach nawigacyjnych w czasie rzeczywistym. Wypróbuj już dziś!