Hàm Hàm TO_CHAR trong Oracle
Trong bài này chúng ta sẽ tìm hiểu đến hàm TO_CHAR trong Oracle.
Hàm TO_CHAR dùng để chuyển đổi một số hoặc ngày tháng sang kiểu chuỗi.
1. Hàm TO_CHAR trong Oracle
Sau đây là cú pháp và cách sử dụng hàm TO_CHAR.
Cú pháp
TO_CHAR( value [, format_mask] [, nls_language] )
Bài viết này được đăng tại [free tuts .net]
Trong đó:
value
là giá trị cần chuyển đổi, có thể là number hoặc ngày thángformat_mask
không bắt buộc, là đinh dạng dùng để chuyển đổivalue
thành kiểu stringnls_language
không bắt buộc, là ngôn ngữ dùng để chuyển đổivalue
thành kiểu string
Return
Hàm này sẽ trả về một chuỗi string.
Version
Hàm TO_CHAR được sử dụng ở các version sau:
- Oracle 12c, Oracle 11g, Oracle 10g, Oracle 9i, Oracle 8i
2.Ví dụ chuyển đổi thành string trong Oracle
Sau đây chúng ta sẽ làm một vài ví dụ về cách sử dụng hàm TO_CHAR để chuyển đổi một giá trị bất kì thành kiểu string.
Ví dụ với Number
TO_CHAR(1210.73, '9999.9') # Kết quả: ' 1210.7' TO_CHAR(-1210.73, '9999.9') # Kết quả: '-1210.7' TO_CHAR(1210.73, '9,999.99') # Kết quả: ' 1,210.73' TO_CHAR(1210.73, '$9,999.00') # Kết quả: ' $1,210.73' TO_CHAR(21, '000099') # Kết quả: ' 000021'
Ví dụ với Date
Trước tiên bạn hãy tham khảo bảng format dành cho ngày tháng đã nhé.
Và đây là các ví dụ.
TO_CHAR(sysdate, 'yyyy/mm/dd') # Kết quả: '2003/07/09' TO_CHAR(sysdate, 'Month DD, YYYY') # Kết quả: 'July 09, 2003' TO_CHAR(sysdate, 'FMMonth DD, YYYY') # Kết quả: 'July 9, 2003' TO_CHAR(sysdate, 'MON DDth, YYYY') # Kết quả: 'JUL 09TH, 2003' TO_CHAR(sysdate, 'FMMON DDth, YYYY') # Kết quả: 'JUL 9TH, 2003' TO_CHAR(sysdate, 'FMMon ddth, YYYY') # Kết quả: 'Jul 9th, 2003'
Bạn hãy để ý trong các ví dụ mình có bổ sung hai kí tự FM bắt đầu cho tham số format_mask
, điều này sẽ nói cho Oracle biết rằng các ký tự zero và blanks sẽ bị xóa.