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

Hàm NVL () trong Oracle

Trong Cơ sở dữ liệu Oracle, NVL() hàm cho phép chúng tôi thay thế các giá trị null bằng một giá trị khác.

Cú pháp

Cú pháp như sau:

NVL(expr1, expr2)

Nếu expr1 là null, sau đó là expr2 Được trả lại. Nếu không thì expr1 được trả lại.

Ví dụ

Dưới đây là một ví dụ để chứng minh:

SELECT NVL(null, 'Fish')
FROM DUAL;

Kết quả:

Fish

Và đây là những gì sẽ xảy ra khi đối số đầu tiên là một giá trị khác rỗng:

SELECT NVL('Brocoli', 'Fish')
FROM DUAL;

Kết quả:

Brocoli

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

Việc gọi hàm mà không chuyển bất kỳ đối số nào dẫn đến lỗi:

SELECT NVL()
FROM DUAL;

Kết quả:

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

Và việc chuyển quá nhiều đối số cũng gây ra lỗi:

SELECT NVL(1, 2, 3)
FROM DUAL;

Kết quả:

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

NVL2() Chức năng

Ngoài ra, bạn có thể sử dụng NVL2() hàm mà cho phép bạn chỉ định một giá trị khác để trả về trong trường hợp đối số đầu tiên không phải là null.


  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ấy giá trị từ FieldA, gửi đến hàm db, trả về giá trị cho FieldB

  2. Chức năng xếp hạng trong MySQL với mệnh đề Order By

  3. SELECT SUM trả về một hàng khi không có bản ghi nào

  4. Từng bước cài đặt R12.2.6 EBS trên Virtual Box Part -2

  5. Cách thay đổi nls_date_format mặc định cho ứng dụng khách oracle jdbc