Đây là một cách:
select id, ((var1 is null) + (var2 is null) + (var3 is null)) as var4
from table t;
MySQL xử lý boolean là số nguyên, với true là 1
và false là 0
. Bạn chỉ có thể cộng chúng lại để nhận được tổng số.
Như một bản cập nhật:
update table t
set var4 = ((var1 is null) + (var2 is null) + (var3 is null));
Lưu ý, MySQL không hỗ trợ ISNULL()
. Đó là một chức năng của SQL Server. Nhưng dù sao thì nó cũng không phải là tiêu chuẩn ANSI, vì vậy bạn thường nên sử dụng coalesce()
.