20/07/2019, 09:52

Hàm CAST trong SQL Server

Bài viết này sẽ hướng dẫn chi tiết cho bạn cách sử dụng hàm chuyển đổi kiểu dữ liệu CAST trong SQL Server với cú pháp và những ví dụ cụ thể để dễ hình dung và nắm bắt hàm tốt hơn. Mô tả Hàm CAST trong SQL Server chuyển đổi một biểu thức từ một kiểu dữ liệu này sang kiểu dữ liệu khác. ...

Bài viết này sẽ hướng dẫn chi tiết cho bạn cách sử dụng hàm chuyển đổi kiểu dữ liệu CAST trong SQL Server với cú pháp và những ví dụ cụ thể để dễ hình dung và nắm bắt hàm tốt hơn.

Mô tả

Hàm CAST trong SQL Server chuyển đổi một biểu thức từ một kiểu dữ liệu này sang kiểu dữ liệu khác. Nếu chuyển đổi không thành công, CAST sẽ báo lỗi, ngược lại nó sẽ trả về giá trị chuyển đổi tương ứng.

Cú pháp

Để sử dụng hàm CAST trong SQL Server, ta dùng cú pháp như sau:

CAST(bieuthuc AS kieudulieu [(do_dai)])

Tham số:

  • bieuthuc: giá trị để chuyển đổi sang kiểu dữ liệu khác, cũng có thể là tên của một cột trong bảng hoặc một biểu thức tính toán cần chuyển sang kiểu dữ liệu mới.
  • kieudulieu: tên kiểu dữ liệu mới mà biểu thức sẽ được chuyển đổi sang. Có thể là một trong những kiểu như sau: bigint, int, smallint, tinyint, bit, decimal, numeric, money, smallmoney, float, real, datetime, smalldatetime, char, varchar, text, nchar, nvarchar, ntext, binary, varbinary hoặc image.
  • do_dai (không bắt buộc): độ dài kiểu dữ liệu cho kết quả của char, varchar, nchar, nvarchar, binaryvarbinary.

Lưu ý:

  • Khi chuyển đổi kiểu dữ liệu float hay numeric sang số nguyên int, hàm cast sẽ cắt phần thập phân phía sau.
  • Xem thêm các hàm CONVERT, TRY_CAST và TRY_CONVERT.
  • CAST có thể được sử dụng trong các phiên bản sau của SQL Server: SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005.

Ví dụ

Hãy xem và khám phá một số ví dụ về hàm CAST trong SQL Server.

SELECT CAST(14.85 AS int);
Result: 14 (kết quả cắt phần thập phân phía sau)

SELECT CAST(14.85 AS float);
Result: 14.85

SELECT CAST(15.6 AS varchar);
Result: '15.6'

SELECT CAST(15.6 AS varchar(4));
Result: '15.6'

SELECT CAST('15.6' AS float);
Result: 15.6

SELECT CAST('2019-05-02' AS datetime);
Result: '2019-05-02 00:00:00.000'

Bài trước: Hàm YEAR trong SQL Server

Bài tiếp: Hàm CONVERT trong SQL Server

0