SQL Server má Boolean
datový typ. Můžete otevřít Logické operátory (Transact-SQL)
manuálovou stránku a najděte následující prohlášení:
Jde jen o to, že tento typ nemůžete použít stejným způsobem, jakým můžete používat jiné datové typy Transact-SQL. Nemůžete například deklarovat booleovské proměnné nebo argumenty, přidávat booleovské sloupce do tabulek, převádět do/z booleovských hodnot. Ale můžete mít booleovské výrazy a použijte je v kontextech, kde jsou vyžadovány (WHERE
, ON
, zkontrolujte omezení…). Můžete také použít booleovské operátory na tyto výrazy:AND
, NOT
a kol. (Operátoři jako <
, =
, LIKE
a další lze také považovat za booleovské v tom smyslu, že se vrací booleovské výsledky, ale jejich operandy ve skutečnosti nikdy nejsou booleovské.)
Abych to shrnul, existuje booleovský typ v SQL Server, ale jeho použití je omezené, jak je popsáno výše. Proč? Moje odpověď může být hloupá, omlouvám se, ale jsem s ní spokojen:takhle to zvolili.