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

Hàm BIN_TO_NUM () trong Oracle

Trong Cơ sở dữ liệu Oracle, BIT_TO_NUM() hàm chuyển đổi một vectơ bit thành số tương đương của nó.

Cú pháp

Cú pháp như sau:

BIN_TO_NUM(expr [, expr ]... )

Trong đó mỗi expr đại diện cho một bit trong vector bit.

Đối số / s có thể là bất kỳ kiểu dữ liệu số nào hoặc bất kỳ kiểu dữ liệu không phải số nào có thể được chuyển đổi hoàn toàn thành NUMBER . Mỗi biểu thức phải đánh giá thành 0 hoặc 1 .

Ví dụ

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

SELECT BIN_TO_NUM(1)
FROM DUAL;

Kết quả:

1

Trong trường hợp này, giá trị nhị phân 1 đại diện cho số 1.

Đây là một cái khác:

SELECT BIN_TO_NUM(1, 0)
FROM DUAL;

Kết quả:

2

Bây giờ chúng ta hãy làm một con số lớn hơn nhiều:

SELECT BIN_TO_NUM(1, 0, 1, 1, 1, 0)
FROM DUAL;

Kết quả:

46

Đối số không hợp lệ

Đang gọi BIN_TO_NUM() với các đối số không phân giải thành NUMBER dẫn đến lỗi:

SELECT BIN_TO_NUM('Cat')
FROM DUAL;

Kết quả:

ORA-01722: invalid number

Giá trị rỗng

Nếu bất kỳ đối số nào null , một lỗi "đối số bất hợp pháp" xảy ra:

SELECT BIN_TO_NUM(null)
FROM DUAL;

Kết quả:

ORA-01760: illegal argument for function

Không có đối số?

Đang gọi BIN_TO_NUM() không có bất kỳ đối số nào trả về 0 (không):

SELECT BIN_TO_NUM()
FROM DUAL;

Kết quả:

0

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chạy Tổng số theo Nhóm SQL (Oracle)

  2. Oracle là Giải pháp thay thế của các bảng thay đổi

  3. Chọn mà không có mệnh đề FROM trong Oracle

  4. Lỗi SQL:ORA-02291:ràng buộc toàn vẹn

  5. Trả về các hàng có chứa giá trị số trong Oracle