Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> SQL Server

Hàm TRY_CAST trong SQL Server

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

Mô tả

Hàm TRY_CAST trong SQL Server chuyển biểu thức từ kiểu dữ liệu này sang kiểu khác. Nếu chuyển đổi thất bại, TRY_CAST trả về NULL, ngược lại trả về giá trị chuyển đổi.

Cú pháp

Để dùng TRY_CAST trong SQL Server, ta dùng cú pháp:

 TRY_CAST(bieuthuc AS kieudulieu [(do_dai)]) 

Tham số :

  1. bieuthuc: giá trị chuyển kiểu, có thể là tên cột hoặc biểu thức tính toán.
  2. kieudulieu: kiểu dữ liệu mới: bigint, int, smallint, tinyint, bit, decimal, numeric, money, smallmoney, float, real, datetime, smalldatetime, char, varchar, text, nchar, nvarchar, ntext, binary, varbinary, image.
  3. do_dai (tùy chọn): độ dài cho char, varchar, nchar, nvarchar, binary, varbinary.

Lưu ý :

  1. Khi chuyển float/numeric sang int, TRY_CAST cắt phần thập phân.
  2. Xem thêm CAST, CONVERT, TRY_CONVERT.
  3. TRY_CAST dùng được trong SQL Server: 2017, 2016, 2014, 2012.

Ví dụ

Xem ví dụ hàm TRY_CAST trong SQL Server.

 SELECT TRY_CAST(14.85 AS int); 
Kết quả: 14
(kết quả int bị cắt phần thập phân)

SELECT TRY_CAST(14.85 AS float);
Kết quả: 14.85
(kết quả float không bị cắt)

SELECT TRY_CAST('14 Main St.' AS float);
Kết quả: NULL
(NULL vì không chuyển chuỗi thành float được)

SELECT TRY_CAST(15.6 AS varchar);
Kết quả: '15.6'
(kết quả varchar)

SELECT TRY_CAST(15.6 AS varchar(2));
Kết quả: NULL
(NULL do chuyển đổi thất bại - giá trị không phù hợp varchar độ dài 2)

SELECT TRY_CAST('2018-09-13' AS datetime);
Kết quả: '2018-09-13 00:00:00.000'
(kết quả datetime)