Hàm ZEROIFNULL thay thế các giá trị NULL bằng 0
Ví dụ nhanh
SELECT ZEROIFNULL[NULL]; -- Result: 0
Thông tin tóm tắt
Cú phápZEROIFNULL[biểu thức]Các lựa chọn thay thếCASE KHI biểu thức LÀ NULL THÌ 0 ELSE biểu thức ENDCASE tuân thủ ANSI SQLchức năng liên quan
Cập nhật cuối cùng. Địa tầng 13. 0
Thay thế các giá trị NULL bằng 0 trong các cơ sở dữ liệu khác
tiên tri
NVL[biểu thức, 0]TRƯỜNG HỢP KHI biểu thức LÀ NULL THÌ 0 KHÁC biểu thức KẾT THÚCPhát hiện giá trị NULL hoặc chuỗi Độ dài bằng Không. Chuyển đổi NULL thành chuỗi có độ dài bằng 0 hoặc giá trị khác
Syntax Nz[expression, [ valueifnull ]] Key valueifnull A value to return if expression is NULL. If value_if_null is not specified and the expression = NULL the default value returned will be a zero-length string.
Hàm Nz[] có thể được sử dụng trong VBA hoặc trong truy vấn SQL
MS Access phân biệt giữa chuỗi rỗng "" và giá trị NULL. Nếu bạn nhập một cái gì đó vào một trường và sau đó xóa nó, bạn sẽ để lại một chuỗi có độ dài bằng 0, ngược lại nếu chưa từng nhập gì vào một trường thì nó sẽ là NULL.
Nz[] sẽ phát hiện một trong hai.
value_if_null có thể được đặt để trả về bất kỳ chuỗi hoặc số nào. Nếu Nz[] đang trả về #Error, điều này thường xảy ra nhất là do trả về Kiểu dữ liệu không tương thích với Kiểu dữ liệu của biến của bạn
Nz[] sẽ không đánh dấu biến Empty chưa được khởi tạo
Mặc định
Nếu giá trị của đối số biến thể là NULL, thì hàm Nz trả về số 0 hoặc chuỗi có độ dài bằng 0 [luôn là chuỗi có độ dài bằng 0 khi được sử dụng trong biểu thức truy vấn], tùy thuộc vào việc ngữ cảnh cho biết giá trị có phải là một số hay không
Đây không phải lúc nào cũng là điều bạn muốn, chẳng hạn như trong cơ sở dữ liệu bán hàng, bạn có thể có một số mặt hàng là mẫu miễn phí với giá $0, vì vậy, đối với một mặt hàng hoàn toàn mới chưa biết giá, bạn sẽ không muốn mặc định . item_price,"N/A"] sẽ hợp lý hơn
Hàm Nz rất hữu ích để bẫy các lỗi do NULL/giá trị thiếu gây ra, đây là một trong những hàm Access phổ biến nhất/được sử dụng nhiều
Nz[] không phải trả về kiểu dữ liệu khớp với dữ liệu nguồn, vì vậy bạn có thể kiểm tra một số nguyên và trả về một chuỗi hoặc ngược lại
Tóm lược. trong hướng dẫn này, bạn sẽ tìm hiểu về hàm IFNULL của MySQL, đây là một hàm luồng điều khiển rất tiện dụng để xử lý các giá trị NULL
Giới thiệu về hàm IFNULL của MySQL
Hàm
7 của MySQL là một trong các hàm luồng điều khiển của MySQL chấp nhận hai đối số và trả về đối số đầu tiên nếu nó không phải làCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
8. Mặt khác, hàmCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
7 trả về đối số thứ haiCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Hai đối số có thể là giá trị chữ hoặc biểu thức
Sau đây minh họa cú pháp của hàm
7Code language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Code language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Hàm
7 trả vềCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
3 nếuCode language: SQL [Structured Query Language] [sql]
SELECT IFNULL[1,0]; -- returns 1
3 không phải làCode language: SQL [Structured Query Language] [sql]
SELECT IFNULL[1,0]; -- returns 1
8 ; . CácCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Hàm
7 trả về một chuỗi hoặc một số dựa trên ngữ cảnh nơi nó được sử dụngCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Nếu bạn muốn trả về một giá trị dựa trên điều kiện
8 hoặcCode language: SQL [Structured Query Language] [sql]
SELECT IFNULL[1,0]; -- returns 1
9 khác với điều kiệnCode language: SQL [Structured Query Language] [sql]
SELECT IFNULL[1,0]; -- returns 1
8, bạn nên sử dụng hàm IFCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Các ví dụ về hàm IFNULL của MySQL
Xem các ví dụ về hàm
7 sau đây
IFNULL[expression_1,expression_2];
Code language: SQL [Structured Query Language] [sql]
Code language: SQL [Structured Query Language] [sql]
SELECT IFNULL[1,0]; -- returns 1
Dùng thử
Code language: SQL [Structured Query Language] [sql]
SELECT IFNULL['',1]; -- returns ''
Dùng thử
Syntax Nz[expression, [ valueifnull ]] Key valueifnull A value to return if expression is NULL. If value_if_null is not specified and the expression = NULL the default value returned will be a zero-length string.0
Dùng thử
Làm thế nào nó hoạt động
2 trả về 1 vì 1 không phải là
Code language: SQL [Structured Query Language] [sql]SELECT IFNULL['',1]; -- returns ''
8
Code language: SQL [Structured Query Language] [sql]IFNULL[expression_1,expression_2];
4 trả về
Code language: SQL [Structured Query Language] [sql]SELECT IFNULL['',1]; -- returns ''
5 vì chuỗi
Code language: SQL [Structured Query Language] [sql]SELECT IFNULL['',1]; -- returns ''
5 không phải là
Code language: SQL [Structured Query Language] [sql]SELECT IFNULL['',1]; -- returns ''
8
Code language: SQL [Structured Query Language] [sql]IFNULL[expression_1,expression_2];
8 trả về chuỗi
Code language: SQL [Structured Query Language] [sql]SELECT IFNULL['',1]; -- returns ''
9 vì đối số đầu tiên là
Code language: SQL [Structured Query Language] [sql]SELECT IFNULL['',1]; -- returns ''
8
Code language: SQL [Structured Query Language] [sql]IFNULL[expression_1,expression_2];
Hãy lấy một ví dụ thực tế về việc sử dụng hàm
7Code language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Đầu tiên, tạo một bảng mới có tên
Syntax Nz[expression, [ valueifnull ]] Key valueifnull A value to return if expression is NULL. If value_if_null is not specified and the expression = NULL the default value returned will be a zero-length string.02 bằng cách sử dụng câu lệnh sau
Syntax Nz[expression, [ valueifnull ]] Key valueifnull A value to return if expression is NULL. If value_if_null is not specified and the expression = NULL the default value returned will be a zero-length string.8
Mỗi liên hệ có một tên, điện thoại doanh nghiệp và điện thoại nhà
Thứ hai, chèn dữ liệu vào bảng
Syntax Nz[expression, [ valueifnull ]] Key valueifnull A value to return if expression is NULL. If value_if_null is not specified and the expression = NULL the default value returned will be a zero-length string.02
0Code language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Một số liên hệ chỉ có điện thoại nhà riêng hoặc điện thoại doanh nghiệp. Để lấy tất cả tên liên lạc và điện thoại từ bảng
Syntax Nz[expression, [ valueifnull ]] Key valueifnull A value to return if expression is NULL. If value_if_null is not specified and the expression = NULL the default value returned will be a zero-length string.02, bạn sử dụng truy vấn sau
2Code language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Dùng thử
Sẽ thật tuyệt nếu chúng ta có thể nhận được số điện thoại nhà của người liên hệ nếu số điện thoại cơ quan của người liên hệ không khả dụng. Đây là nơi
Đây là lúc hàm
7 phát huy tác dụng. HàmCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
7 trả về số điện thoại nhà riêng nếu số điện thoại cơ quan làCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
8Code language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Thứ ba, sử dụng truy vấn sau để lấy tên và điện thoại của tất cả các địa chỉ liên hệ
3Code language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Dùng thử
Lưu ý rằng bạn nên tránh sử dụng hàm
7 trong mệnh đề WHERE vì nó làm giảm hiệu suất của truy vấn. Nếu bạn muốn kiểm tra xem một giá trị cóCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Nếu bạn muốn kiểm tra xem một giá trị có phải là
8 hay không, bạn có thể sử dụngCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
Syntax Nz[expression, [ valueifnull ]] Key valueifnull A value to return if expression is NULL. If value_if_null is not specified and the expression = NULL the default value returned will be a zero-length string.80 hoặc
Syntax Nz[expression, [ valueifnull ]] Key valueifnull A value to return if expression is NULL. If value_if_null is not specified and the expression = NULL the default value returned will be a zero-length string.81 trong mệnh đề
Syntax Nz[expression, [ valueifnull ]] Key valueifnull A value to return if expression is NULL. If value_if_null is not specified and the expression = NULL the default value returned will be a zero-length string.82
Trong hướng dẫn này, chúng tôi đã giới thiệu cho bạn hàm
7 của MySQL và chỉ cho bạn cách sử dụng hàmCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];
7 trong các truy vấnCode language: SQL [Structured Query Language] [sql]
IFNULL[expression_1,expression_2];