2010-10-02 33 views
1

我的意思是我無法查詢空值時,列類型sql_variant我不能SQL_VARIANT場比較IS NULL操作

例如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 沒有行返回

任何想法?

+0

我沒有看到這種行爲 - 您的查詢工作得很好,我...... – 2010-10-02 08:20:08

回答

1

這對我來說很好。你確定你的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 
+0

馬丁那你點什麼,值是字符串空;傻我:) – aeon 2010-10-02 11:25:56