Dường như với tôi, trong MySQL, UNKNOWN
là bí danh cho NULL
, được sử dụng theo nghĩa Boolean.
tôi có thể tìm thông tin này:
Trong SQL, tất cả các toán tử logic đánh giá là TRUE, FALSE, hoặc NULL (UNKNOWN).
MySQL docs - 12.3.3. Logical Operators
Một số thêm thông tin về chung NULL SQL và UNKNOWN:
Khi bị hạn chế bởi một hạn chế NOT NULL, SQL BOOLEAN hoạt động như kiểu Boolean từ các ngôn ngữ khác. Tuy nhiên, không hạn chế, kiểu dữ liệu BOOLEAN BOOLEAN, mặc dù tên của nó, có thể chứa giá trị chân lý TRUE, FALSE và UNKNOWN, tất cả được định nghĩa là boolean literals theo tiêu chuẩn. Tiêu chuẩn này cũng khẳng định rằng NULL và UNKNOWN "có thể được sử dụng thay thế cho nhau để có nghĩa là chính xác cùng một điều".
NULL on Wikipedia
+1 với một thông báo nhỏ: xem xét 'TRUE' như một bí danh cho' 1' là một chút gây hiểu nhầm vì '2 TRUE' (và bất kỳ số nguyên khác không), nhưng bạn thực sự không thể thực hiện' SELECT 2 IS 1' – Mchl