嗨,我学到了sql server的BIT
有真,假,未知。例如,比较1 > NULL
产生unknown
。如何在sql server的布尔中访问UNKNOWN?
我知道我可以间接检查一下:如果x is null or y is null
,那么比较x > y
必须是unknown
。
有没有办法直接访问unknown
?例如
select *
into #t
from (
SELECT 1 as [x], 1 as [y] UNION ALL
SELECT 1 as [x], 2 as [y] UNION ALL
SELECT 1 as [x], NULL as [y]
) as a
SELECT *
from #t
--x y
--1 1
--1 2
--1 NULL
select *
,/* ???? */ as [is x > y]
from #t
--want to have:
--x y is x > y
--1 1 0
--1 2 0
--1 NULL unknown
我认为“未知”表示为NULL。 –