我在sql server中有一個帶datetime空字段的表。我試圖根據該領域的年份對結果進行分組。但是,當我編寫linq查詢時,當我鍵入該字段時,我沒有獲得年度智能感知。它只顯示HasValue和Value。我認爲是因爲它是可轉換類型的。我如何在這種情況下進行分組?在linq中按日期分組
1
A
回答
2
你應該在Nullable<DateTime>
所以
group obj by obj.DateTimeField.Value.Year into g
0
同樣價值的年級組,記住訪問您nullable類型的.Value
財產可能會引發InvalidOperationException
時沒有相應的價值(如在 - 場NULL
在數據庫中)。
在這種情況下,您可以過濾掉空值:
var filteredGroups = rows.Where(row => row.DateTimeField.HasValue)
.GroupBy(row => row.DateTimeField.Value.Year);
...或藏漢返回空值;在某些虛擬按鍵,說:
var nullValuesPresent = rows.GroupBy(row => row.DateTimeField.HasValue
? row.DateTimeField.Value.Year : -1);
...這在上面的例子中,將在-1
鍵進行分組(或任何價值,你的選擇代表不存在的情況下一年)。
相關問題
- 1. 按日期分組按日期分組
- 2. Linq按日期分組順序
- 3. Linq - 按日期分組和計數
- 4. LINQ的按日期分類
- 5. Linq到MySql組按日期
- 6. LINQ-to-SQL - 按日期分組的日期對象
- 7. LINQ如何按日期分組日期和月份和年份
- 8. Linq分組日期(月)
- 9. 按空組分組日期
- 10. LINQ中沒有TruncateTime()的日期分組
- 11. 在ireport中按日期分組數據
- 12. 在SQL Server中按日期分組
- 13. 在Wordpress中按日期分組帖子
- 14. 按日期分組的MySQL日期列?
- 15. 按日期分組數據
- 16. 按日期部分組(dd.mm.yyyy)
- 17. 按當地日期分組
- 18. Grails按日期分組
- 19. 分組要素按日期
- 20. 如何按日期分組?
- 21. 按日期分組ID
- 22. 按月分組SAS日期
- 23. mySQL DateDiff按日期分組
- 24. 分組值按日期
- 25. 按日期分組Mongo aggregation
- 26. MySQL:按日期分組RANGE?
- 27. SQL:按日期分組
- 28. 不按日期分組?
- 29. 按最大日期分組
- 30. 按日期分組排序
你能告訴我們查詢嗎?在猜測我會說'DateTimeField.Value.Year' – 2011-03-28 13:52:14
@Matt埃倫偉大。你的猜測是絕對正確的。多謝了朋友。我想我只是一步之遙。 – 2011-03-28 14:13:56
我不知道如何標記馬特的評論作爲回答 – 2011-03-28 14:23:06