首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用group by查询

使用group by查询
EN

Stack Overflow用户
提问于 2012-04-02 20:58:12
回答 1查看 347关注 0票数 1

我正在尝试使用group by语句进行查询,但到目前为止还没有成功。

我有一个表,上面有不同类型的活动(tblExcursion),还有一个表,上面有计划的(tblReservationDetail)。在tblExcursion中,我有一个'GroupName‘列。在一个GroupName下有多个活动(例如皮划艇、帆船、水球是水上运动的组名)。

现在我想检索每个GroupName (而不是每个活动/远足!)的参与者数量。但是我不能使用.GroupBy()或group...by

下面是我使用activityname而不是groupname的查询:

代码语言:javascript
复制
var vAllExcursions = (from oExcursion in clsApplication._oDBConnection.tblExcursions
                      select oExcursion).ToList();

foreach (tblExcursion EXitem in vAllExcursions)
{
    var vAllExcursionsPerType = (from oReservationDetail in clsApplication._oDBConnection.tblReservationDetails
                                         where oReservationDetail.StartTime.Date.Year == this.cboYear.getSelectedID()
                                         && oReservationDetail.StartTime.Date.Month == this.cboMonth.getSelectedID()
                                         && oReservationDetail.ExcursionID == EXitem.ID
                                         select oReservationDetail).ToList();
}

Here I fill my datagrid
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-02 21:20:29

您想要按GroupName进行分组,以获得组:

代码语言:javascript
复制
var vAllExcursions = clsApplication._oDBConnection.tblExcursions
    .GroupBy(ex => ex.GroupName)
    .ToList();

然后在您的内部循环中,通过检查ExcursionID是否与列表中与组关联的任何id匹配来查找任何相关的预订:

代码语言:javascript
复制
foreach (var EXitemGroup in vAllExcursions)
{
    var excursionIds = EXitemGroup.Select (exg => exg.ID).ToArray();
    ...
        && excursionIds.Contains(oReservationDetail.ExcursionID)
    ...
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9976917

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档