Z powodu dodatkowych komplikacji, pomysł wielu wartości typu Null nie uzyskał powszechnej akceptacji.

Logika trójwartościowa

Ponieważ Null nie jest członkiem jakiejkolwiek domeny danych, nie jest on rozważany jako „wartość”, lecz raczej jako znacznik (lub symbol zastępczy) wskazujący na brak wartości. Z uwagi na to, porównywanie z Null nigdy nie może zwrócić Prawdy lub Fałszu, lecz zawsze trzeci logiczny wynik, Nieznany. Logiczny wynik poniższego wyrażenia, które porównuje wartość 10 z Null to Nieznany.

SELECT 10 = NULL -- Wynik to Nieznany

Jednakże w pewnych operacjach z Null, można otrzymać wartości, jeśli Null nie ma wpływu na wyniki takiej operacji. Rozważając następujący przykład:

SELECT NULL OR TRUE -- Wynik to Prawda

W tym przypadku, fakt, że wartość z lewej strony operatora sumy logiczniej (OR) jest nieznana jest bez znaczenia, ponieważ wynikiem tej sumy może być Prawda, niezależnie od wartości z lewej strony.

SQL realizuje trzy wyniki logiczne, czyli implementacje SQL muszą zapewnić specjalną logikę trójwartościową.