Mang đến cho bạn hành trang là Kiến thức và Kinh nghiệm

Lựa chọn chủ đề bạn quan tâm

Cùng nhau thảo luận về các vấn đề

Hãy theo dõi chúng tôi nếu bạn thấy bổ ích

  1. Hỏi đáp IT
  2. Hỏi nhanh

[CHIA SẺ] Hàm NVL trong PLSQL – Oracle

10744 Lượt xem 1 Bình luận 0 Lượt báo xấu
Trong Oracle/PLSQL, hàm NVL dùng để thế 1 giá trị nào đó khi tìm thấy giá trị null 
Cú pháp

Cú pháp cho hàm NVL là : NVL (String1, replace_with);

Trong đó :

  • String1 là chuỗi để kiểm tra giá trị null
  • replace_with là chuỗi sẽ được thế khi String1 trả về giá trị null
Lưu ý 


  • Hàm này được áp dụng trong các phiên bản : Oracle 12c, Oracle 11g, Oracle 10g, Oracle 9i, Oracle 8i


Ví dụ cho hàm NVL

Ví dụ #1 :
Select NVL(fullname,,'CAFEITVN.COM')
from Employee;

Câu lệnh truy vấn trên sẽ trả về giá trị ‘CAFEITVN.COM’ nếu trường fullname nhận giá trị null.
Ví dụ #2: Một ví dụ khác về cách sử dụng hàm NVL
Select id, NVL(fullname,namedesc)
from Employee;

Câu lệnh truy vấn trên sẽ trả về giá trị của trường namedesc nếu trường fullname nhận giá trị null
Một số câu hỏi thường gặp
Question#1 : tôi đã cố gắng sử dụng hàm NVL như sau :
Select NVL (Distinct (fullname),'CAFEITVN.COM')
from Employee;

Tôi đã gặp lỗi khi tôi sử dụng từ khóa Distinct , khi tôi bỏ từ khóa Distinct thì câu lệnh thực hiện bình thường.
Answer#1 : bạn không thể sử dụng mệnh đề Distinct với hàm NVL, tuy nhiên bạn có thể sử dụng Distinct như sau:
Select Distinct NVL(fullname,'CAFEITVN.COM')
from Employee\

Question#2 : Tôi có thể sử dụng 1 câu lệnh với hàm NVL để thay thế giá trị null cho nhiều trường được không :
Select NVL (col1,col2, col3, 'N/A')
from Table1;

Answer#2 : Bạn không thể sử dụng Câu lệnh trên bởi vì hàm NVL chỉ được thiết kế để sử dụng với 2 tham số như trên tôi đã giới thiệu. Thay vào đó bạn có thể sử dụng với cú pháp sau :
Select NVL(col1, 'CAFEITVN.COM'),
NVL(col2, 'CAFEITVN.COM'),
NVL(col3,'CAFEITVN.COM')
from Table1;

Câu trả lời

- Bạn đã sẵn sàng thảo luận về chủ đề này. Hãy bấm "Viết bình luận", bạn có thể lựa chọn sử dụng tài khoản Facebook hoặc Google++

- Vì sự phát triển của cộng đồng CNTT/CNPM tại Việt Nam!

Unknown user
No responses yet

imagesjpg
0 Lượt thích

Từ khóa tìm kiếm

Câu trả lời mới nhất

Tin tuyển dụng