Chuyển đổi chuỗi thành int MySQL

Đôi khi bạn có thể cần chuyển đổi dữ liệu trong MySQL hoặc nhập dữ liệu ép kiểu trong MySQL. Đây là cách chuyển đổi dữ liệu từ kiểu dữ liệu này sang kiểu dữ liệu khác bằng hàm CONVERT của MySQL. Nó cũng có thể được sử dụng để chuyển đổi dữ liệu từ bộ ký tự này sang bộ ký tự khác

 

Cách chuyển đổi dữ liệu trong MySQL

Dưới đây là các bước chuyển đổi dữ liệu trong MySQL bằng hàm MySQL CONVERT. Đây là cú pháp của hàm MySQL CONVERT

CONVERT(input_value, data_type)

Trong hàm trên, bạn cần cung cấp input_value dưới dạng chuỗi ký tự hoặc tên cột và data_type mà bạn muốn chuyển đổi dữ liệu này sang. Giống như MySQL CAST, bạn có thể truyền dữ liệu thành các kiểu dữ liệu BINARY, CHAR, DATE, DATETIME, TIME, DECIMAL, SIGNED, UNSIGNED

Ví dụ: đây là cách chuyển đổi giá trị bằng chữ sang loại dữ liệu khác

CONVERT(1, char)

và đây là cách chuyển đổi một cột (e. g id) sang kiểu dữ liệu khác

CONVERT(id, char)

 

Đây là cú pháp MySQL CONVERT để chuyển đổi bộ ký tự

CONVERT(input_value USING character_set)

Trong hàm trên, bạn cần cung cấp input_value dưới dạng chuỗi ký tự hoặc tên cột và character_set mà bạn muốn chuyển đổi dữ liệu này thành

Đây là một ví dụ về cách truyền dưới dạng latin1

mysql> select convert('test string' using 'latin1'); +---------------------------------------+ | convert('test string' using 'latin1') | +---------------------------------------+ | test string | +---------------------------------------+

 

 

Phần thưởng đọc. Cách gõ Cast trong MySQL

 

Các ví dụ CHUYỂN ĐỔI MySQL

Chúng ta hãy xem xét một số ví dụ về chức năng CONVERT của MySQL

 

Chuỗi CHUYỂN ĐỔI MySQL đến ngày

Đây là cách chuyển đổi chuỗi thành ngày

mysql> select convert('2020-08-01',date); +----------------------------+ | convert('2020-08-01',date) | +----------------------------+ | 2020-08-01 | +----------------------------+

Phần thưởng đọc. Truy vấn khôi phục MySQL

 

Chuỗi CHUYỂN ĐỔI MySQL thành số thập phân

Đây là cách chuyển đổi chuỗi thành số thập phân

mysql> select convert('1.234',decimal(4,3)); +-------------------------------+ | convert('1.234',decimal(4,3)) | +-------------------------------+ | 1.234 | +-------------------------------+

Phần thưởng đọc. Cách sử dụng Tổng hợp MySQL

 

Chuỗi CHUYỂN ĐỔI MySQL thành gấp đôi

MySQL không hỗ trợ chuyển đổi sang kiểu dữ liệu kép. Bạn sẽ cần chuyển đổi chuỗi thành số thập phân

mysql> select convert('2.134',decimal(4,3)); +-------------------------------+ | convert('2.134',decimal(4,3)) | +-------------------------------+ | 2.134 | +-------------------------------+

 

Chuỗi CHUYỂN ĐỔI MySQL để nổi

Một lần nữa, MySQL không hỗ trợ chuyển đổi sang kiểu dữ liệu dấu phẩy động. Bạn sẽ cần chuyển đổi chuỗi thành số thập phân

mysql> select convert('2.134',decimal(4,3)); +-------------------------------+ | convert('2.134',decimal(4,3)) | +-------------------------------+ | 2.134 | +-------------------------------+

Phần thưởng đọc. Cách vô hiệu hóa kiểm tra khóa ngoại trong MySQL

 

Chuỗi CHUYỂN ĐỔI MySQL thành int

Đây là một ví dụ để MySQL chuyển đổi chuỗi thành số nguyên đã ký. Xin lưu ý rằng bạn chỉ có thể chuyển sang các loại dữ liệu số nguyên KHÔNG KÝ hoặc ĐÃ KÝ. Bạn không thể sử dụng INT trong chức năng CAST

mysql> select cast('123' as signed); +------------------------+ | cast('123' as signed) | +------------------------+ | 1 | +------------------------+

 

MySQL CHUYỂN ĐỔI Ngày giờ đến nay

Đây là cách chuyển đổi datetime thành date. Bạn cũng có thể sử dụng nó để chuyển đổi dấu thời gian thành ngày

CONVERT(1, char) 0

Phần thưởng đọc. Cách kiểm tra phiên bản MySQL

 

MySQL CHUYỂN ĐỔI Blob thành văn bản

MySQL CONVERT không hỗ trợ chuyển đổi sang kiểu dữ liệu văn bản. Bạn cần chuyển đổi blog thành char. Đây là một mẫu để chuyển đổi blob nhỏ thành char

Hàm CAST() trong MySQL được sử dụng để chuyển đổi một giá trị từ kiểu dữ liệu này sang kiểu dữ liệu khác được chỉ định trong biểu thức. Nó chủ yếu được sử dụng với các mệnh đề WHERE, HAVING và JOIN. Hàm này tương tự như hàm CONVERT() trong MySQL

Sau đây là các kiểu dữ liệu mà chức năng này hoạt động hoàn hảo

DatatypeDescriptionsDATENó chuyển đổi giá trị thành kiểu dữ liệu DATE ở định dạng "YYYY-MM-DD". Nó hỗ trợ phạm vi NGÀY trong '1000-01-01' đến '9999-12-31'. DATETIMENó chuyển đổi giá trị thành kiểu dữ liệu DATETIME trong "YYYY-MM-DD HH. MM. định dạng SS". Nó hỗ trợ phạm vi trong '1000-01-01 00. 00. 00' đến '9999-12-31 23. 59. 59'. TIMENó chuyển đổi giá trị thành kiểu dữ liệu TIME trong "HH. MM. định dạng SS". Nó hỗ trợ phạm vi thời gian trong '-838. 59. 59' đến '838. 59. 59'. CHARIt chuyển đổi một giá trị thành kiểu dữ liệu CHAR chứa chuỗi có độ dài cố định. DECIMALIit chuyển đổi một giá trị thành kiểu dữ liệu DECIMAL chứa chuỗi thập phân. SIGNEDNó chuyển đổi một giá trị thành kiểu dữ liệu SIGNED chứa số nguyên 64 bit đã ký. UNSIGNEDNó chuyển đổi một giá trị thành kiểu dữ liệu UNSIGNED chứa số nguyên 64 bit không dấu. BINARYNó chuyển đổi một giá trị thành kiểu dữ liệu BINARY chứa chuỗi nhị phân

cú pháp

Sau đây là cú pháp của hàm CAST() trong MySQL

Giải thích thông số

Cú pháp này chấp nhận hai tham số, sẽ được thảo luận bên dưới

Tham sốYêu cầuMô tảBiểu thứcYêu cầuĐó là một giá trị sẽ được chuyển đổi thành một kiểu dữ liệu cụ thể khác. DatatypeRequiredĐó là một giá trị hoặc kiểu dữ liệu trong đó giá trị biểu thức cần được chuyển đổi

Giá trị trả về

Sau khi chuyển đổi sẽ trả về giá trị kiểu dữ liệu mà ta muốn chuyển đổi

Hỗ trợ phiên bản MySQL

Chức năng CAST có thể hỗ trợ các phiên bản MySQL sau

  • mysql 8. 0
  • mysql 5. 7
  • mysql 5. 6
  • mysql 5. 5
  • mysql 5. 1
  • mysql 5. 0
  • mysql 4. 1
  • mysql 4. 0

Hãy để chúng tôi hiểu chức năng MySQL CAST() với các ví dụ sau. Chúng ta có thể sử dụng trực tiếp hàm CAST với câu lệnh SELECT

ví dụ 1

Câu lệnh này chuyển đổi giá trị thành kiểu dữ liệu DATE

đầu ra

ví dụ 2

Câu lệnh này chuyển đổi giá trị thành kiểu dữ liệu SIGNED

đầu ra

ví dụ 3

Câu lệnh này chuyển đổi giá trị thành kiểu dữ liệu UNSIGNED

đầu ra

Ví dụ 4

Đôi khi cần chuyển đổi chuỗi thành số nguyên một cách rõ ràng, hãy sử dụng câu lệnh sau để chuyển đổi giá trị thành kiểu dữ liệu INTEGER

đầu ra

Ví dụ 5

Câu lệnh sau trước tiên chuyển đổi một giá trị số nguyên thành kiểu dữ liệu chuỗi và sau đó thực hiện nối với một chuỗi được chỉ định khác

đầu ra

Ví dụ 6

Trong ví dụ này, chúng ta sẽ xem cách hàm CAST hoạt động với bảng. Trước tiên chúng ta hãy tạo một bảng "Đơn hàng" chứa dữ liệu sau

Trong bảng trên, chúng ta có thể thấy Order_Date thuộc kiểu dữ liệu DATE. Bây giờ, nếu chúng ta muốn lấy tên sản phẩm giữa các khoảng thời gian đã chọn, hãy thực hiện câu lệnh bên dưới. Ở đây, chuỗi ký tự được chuyển đổi thành giá trị dấu thời gian trước khi đánh giá điều kiện WHERE

Làm cách nào để chuyển đổi chuỗi thành số trong SQL?

Các hàm SQL liên quan .
TO_NUMBER chuyển đổi một chuỗi thành một số kiểu dữ liệu NUMERIC
TO_CHAR thực hiện thao tác ngược lại;
CAST và CONVERT có thể được sử dụng để chuyển đổi một chuỗi thành một số của bất kỳ loại dữ liệu nào. .
TO_DATE chuyển đổi chuỗi ngày được định dạng thành số nguyên ngày

Làm cách nào để chuyển đổi kiểu dữ liệu trong MySQL?

Hàm CONVERT() của MySQL được sử dụng để chuyển đổi một giá trị từ một kiểu dữ liệu này sang một kiểu dữ liệu khác. Hàm CONVERT() của MySQL cũng được sử dụng để chuyển đổi một giá trị từ bộ ký tự này sang bộ ký tự khác. Nó chấp nhận hai tham số là giá trị đầu vào và loại được chuyển đổi trong.

CAST() trong MySQL là gì?

Hàm CAST() chuyển đổi một giá trị (thuộc bất kỳ loại nào) thành kiểu dữ liệu đã chỉ định .

Làm cách nào để chuyển đổi cột VARCHAR thành INT trong SQL?

Các phương thức CAST() và CONVERT() của SQL Server có thể được sử dụng để chuyển đổi VARCHAR thành INT. .
loại dữ liệu. Loại dữ liệu hợp lệ mà hàm sẽ truyền biểu thức vào
sự biểu lộ. Giá trị được đúc
Phong cách. Là một số nguyên được cung cấp chỉ định cách hàm sẽ dịch biểu thức

Chủ đề