Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Hàm ASCIISTR () trong Oracle

Trong Cơ sở dữ liệu Oracle, ASCIISTR() hàm trả về phiên bản ASCII của chuỗi đã cho trong bộ ký tự cơ sở dữ liệu.

Cú pháp

Cú pháp như sau:

ASCIISTR(char)

Trong đó char là một chuỗi hoặc một biểu thức phân giải thành một chuỗi, trong bất kỳ bộ ký tự nào.

Các ký tự không phải ASCII được chuyển đổi thành dạng \xxxx , trong đó xxxx đại diện cho một đơn vị mã UTF-16.

Ví dụ

Đây là một ví dụ:

SELECT ASCIISTR('Fish')
FROM DUAL;

Kết quả:

Fish

Trong trường hợp này, kết quả giống với đầu vào vì đầu vào đã sử dụng các ký tự ASCII.

Đây là một cái khác sử dụng các ký tự không phải ASCII:

SELECT ASCIISTR('ปลา')
FROM DUAL;

Kết quả:

\0E1B\0E25\0E32

Tại đây, chúng tôi nhận được từng ký tự trong số ba ký tự được trả về trong các ký tự ASCII tương đương của chúng.

Trong trường hợp này, đầu vào ( ปลา ) là từ tiếng Thái có nghĩa là "cá". Điều này có thể được phát âm là "Plā".

Đây là những gì sẽ xảy ra khi chúng ta vượt qua Plā tới ASCIISTR() chức năng:

SELECT ASCIISTR('Plā')
FROM DUAL;

Kết quả:

Pl\0101

Trong trường hợp này, hai ký tự đầu tiên mà chúng tôi đã truyền là ký tự ASCII, nhưng ký tự thứ ba không phải là ASCII. Do đó, hàm trả về hai ký tự đầu tiên không thay đổi và ký tự thứ ba được chuyển đổi thành ASCII.

Đây là một cái khác vượt qua น้ำ , là từ tiếng Thái có nghĩa là "nước":

SELECT ASCIISTR('น้ำ')
FROM DUAL;

Kết quả:

\0E19\0E49\0E33

Giá trị rỗng

Nếu đối số là null , kết quả là null :

SET NULL 'null';
SELECT ASCIISTR(null)
FROM DUAL;

Kết quả:

null

Theo mặc định, SQLcl và SQL * Plus trả về một khoảng trống bất cứ khi nào giá trị null xảy ra do một SELECT trong SQL tuyên bố.

Tuy nhiên, bạn có thể sử dụng SET NULL để chỉ định một chuỗi khác được trả về. Ở đây tôi đã chỉ định rằng chuỗi null nên được trả lại.

Số lượng đối số không hợp lệ

Gọi ASCIISTR() mà không có bất kỳ đối số nào dẫn đến lỗi:

SELECT ASCIISTR()
FROM DUAL;

Kết quả:

SQL Error: ORA-00909: invalid number of arguments
00909. 00000 -  "invalid number of arguments"

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lệnh Oracle CREATE TABLE trong PL / SQL với 10 ví dụ

  2. Cách tạo người dùng trong Oracle 11g và cấp quyền

  3. xóa các hàng trùng lặp khỏi Oracle

  4. Phương pháp thu thập:Các hàm ĐẦU TIÊN &CUỐI CÙNG trong Cơ sở dữ liệu Oracle

  5. Trình điều khiển Oracle thay thế cho .net