[SQLServer] Hàm hệ thống (Phần 2)

1. Hàm CAST

Hàm CAST gần giống như hàm CONVERT, dùng chuyển đổi một giá trị có kiểu dữ liệu này sang kiểu dữ liệu khác

Cú pháp:

CAST(<giá trị cần chuyển> AS <kiểu dữ liệu>)

Ví dụ 1: Chuyển đổi giá trị kiểu chuỗi sang kiểu ngày tháng.

SELECT CAST(‘20190420’ AS datetime) AS KieuNgayThang   –Chuyển chuỗi ‘20190420’ sang kiểu datetime

Kết quả:

Hình 1. Sử dụng CAST sang kiểu Datetime

Ví dụ 2: Chuyển đổi giá trị kiểu chuỗi sang kiểu số  nguyên

SELECT CAST(‘20190420’ AS INT) AS KieuSoNguyen  –Chuyển chuỗi ‘20190420’ sang kiểu số nguyên

Kết quả:

Hình 2. Sử dụng CAST sang kiểu INT

Chú ý: chỉ đổi ký tự số sang số. Nếu các  bạn đổi ký tự chữ cái hoặc ký tự đặc biệt sang kiểu số sẽ phát sinh lỗi !

Hình 3. Lỗi khi sử dụng CAST từ kí tự chữ sang số

2. Hàm CONVERT

Hàm CONVERT gần giống như hàm CAST, dùng chuyển đổi một giá trị có kiểu dữ liệu này sang kiểu dữ liệu khác

Cú pháp:

CONVERT(<kiểu dữ liệu>, <giá trị cần chuyển>, [<loại>])

Ví dụ 3: Chuyển đổi giá trị kiểu datetime sang chuỗi ký tự

SELECT CONVERT(varchar(20),GETDATE()) AS NgayThangNamGioPhutGiayMacDinh
SELECT CONVERT(varchar(20),GETDATE(), 105) AS NgayThangNam
SELECT CONVERT(varchar(20),GETDATE(), 108) AS GioPhutGiay
SELECT CONVERT(varchar(20),GETDATE(), 120) AS NgayThangNamGioPhutGiay

Kết quả:

Hình 4. Sử dụng CONVERT từ DATETIME sang kiểu VARCHAR

3. Hàm ISDATE

Hàm ISDATE kiểm tra biểu thức ngày tháng hợp lệ hay không.

  • Giá trị trả về 0 nếu biểu thức ngày tháng không hợp lệ.
  • Giá trị trả về 1 nếu biểu thức ngày tháng hợp lệ.

Cú pháp:

ISDATE(<biểu thức cần kiểm tra>)

Ví dụ 4:

SELECT ISDATE(‘20190420’) AS HOPLE

SELECT ISDATE(‘2019-13-13’) AS KHONGHOPLE

Kết quả:

Hình 5. Hàm ISDATE

4. Hàm ISNULL

Hàm ISNULL kiểm tra biểu thức có giá trị NULL, nếu có giá trị NULL sẽ thay thế bằng giá trị khác.

Cú pháp:

ISNULL(<biểu thức cần kiểm tra>, <giá trị thay thế>)

Ví dụ 5:

DECLARE @GiaTriNULL INT = NULL
DECLARE @GiaTriSo INT = 50

SELECT ISNULL(@GiaTriNULL, 100) AS ThayNULLBangMotGiaTriMoi
SELECT ISNULL(@GiaTriSo, 100) AS GiaTriSo

Kết quả:

Hình 6. Hàm ISNULL

5. Hàm ISNUMERIC

Hàm ISNUMERIC kiểm tra biểu thức là số hay không

  • Giá trị trả về 0 nếu biểu thức không có dạng số.
  • Giá trị trả về 1 nếu biểu thức là số.

Cú pháp:

ISNUMERIC(<biểu thức cần kiểm tra>)

Ví dụ 6:

SELECT ISNUMERIC(‘12345’) AS KieuSo
SELECT ISNUMERIC(‘A1234’) AS KhongLaKieuSo

Kết quả:

Hình 7. Hàm ISNUMERIC

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.