0
我試圖拉出一組在一組數據中出現多次的記錄。我的問題在於,我的查詢沒有考慮到最初查詢中的分組,並且基本上是拉取所有記錄。我有從數據表中提取數據的初始查詢,如下所示:LINQ查詢沒有正確分組
Dim eDTKBase = From eDTKData In dteDTK _
Select New With _
{ _
.eDTK_PDP_Code = eDTKData.Field(Of String)("PDP_CODE"), _`
.eDTK_PDP_Description = eDTKData.Field(Of String)("PDP_DESCRIPTION"), _
.eDTK_WB_Slave = eDTKData.Field(Of String)("WALLBOARD_OR_SLAVE"), _
.eDTK_Print_On_DAD = eDTKData.Field(Of String)("PRINT_ON_DAD"), _
.eDTK_PLI = eDTKData.Field(Of String)("COMPASS_PLI"), _
.eDTK_Dead = eDTKData.Field(Of String)("DEAD"), _
.eDTK_Instance = eDTKData.Field(Of String)("COUNTRY_INSTANCE") _
}
我然後嘗試篩選只記錄其中eDTK_PDP_Code字段的計數>只能用於由eDTK_PLI,eDTK_PDP_Code分組的記錄1使用下面的LINQ查詢字段:
Dim EDTKMultPDPtoPLI = From EDTK In eDTKBase _
Group By EDTK.eDTK_PLI, _
EDTK.eDTK_PDP_Code _
Into g = Group _
Where eDTK_PDP_Code.Count > 1 _
Select eDTK_PLI, _
eDTK_PDP_Code, _
eDTK_PDP_Code.Count
的問題是它是從數據表,而不是僅僅在分組的記錄評估整個數據集的。我在這裏做錯了什麼?謝謝。
你是什麼意思評價?在小組賽階段之前,您似乎沒有進行過濾**,因此您必須通過整個數據庫來確定哪些組有多條記錄。 – sgmoore
我注意到另一個例子,它使用g進行過濾。那麼,eDTK_PDP_Code.Count> 1會工作嗎?我正在嘗試使用一個示例來獲取我的LinqPad設置,因此我將嘗試更詳細地查看該問題。 – Wade73
這是LINQ到SQL? –