我正在进行查询:
int numberInInterval = (from dsStatistics.J2RespondentRow item in jStats.J2Respondent
where item.EndTime > dtIntervalLower && item.EndTime <= dtIntervalUpper
select item).count();
在endtime列中似乎有一些dbnulls .. 我能避免这些吗?
尝试添加&amp;&amp;其中item.endtime!= null ..甚至!= dbnull.value
我是否必须执行第二个(第一个)查询以获取所有不为null然后运行上述查询?
我确定它的超级简单修复,但我仍然错过了它...按照
感谢 NAT
答案 0 :(得分:1)
我认为你想使用item.EndTime.HasValue,而不是item.EndTime == null。
答案 1 :(得分:1)
最简单的方法是使用.GetValueOrDefault(......一些合理的默认值...)对可以为null的值进行处理,这样可以避免错误。
答案 2 :(得分:0)
我通常在T-SQL查询中执行此操作的方法是在日期使用ISNULL,并在日期为null时将日期设置为'12 / 31/2099'。
Linq可能是这样的:
来自MyTable中的t 哪里 Convert.ToString((Convert.ToString(t.MyDateColumn)??“12/31/2099”))&lt; MyTargetValue