Я не могу сравнить поле sql_variant с оператором IS NULL - PullRequest
1 голос
/ 02 октября 2010

Я имею в виду, я не могу запросить нулевые значения, когда тип столбца sql_variant

Например, таблица docsdate выглядит следующим образом:

ValID DocID     Value  <--sql variant column)

 1. 488 146      30.10.2007
 2. 740 190      31.03.2008
 3. 570 161      31.10.2008 
 4. 242 103      NULL
 5. 248 104      NULL

Когда запрос похож на select * from docsdate where value is null нетвозвращенные строки

Есть идеи?

1 Ответ

1 голос
/ 02 октября 2010

Это прекрасно работает для меня.Вы уверены, что ваши значения NULL на самом деле являются правильными NULL, а не строками, содержащими текст NULL?Они отображаются с желтым фоном в SSMS?

create table #docsdate 
(
ValID int,
DocID int,
value sql_variant
)

INSERT INTO #docsdate
SELECT 488,146,'30.10.2007' UNION ALL
SELECT 740,190,'31.03.2008' UNION ALL
SELECT 570,161,'31.10.2008' UNION ALL 
SELECT 242,103,NULL UNION ALL
SELECT 248,104,NULL

SELECT * FROM #docsdate
WHERE value IS NULL

DROP TABLE #docsdate
...