
[英]How to sort an array of chars alphabetically so that the uppercase and the lowercase version of the same letter are next to each other?
[英]How to keep list values with same GroupId next to each other no matter the Sort Order?
我正在使用ElasticSearch.net显示客户端的机票列表。 当我们处理机票时,其中一些客户被分组在一起。 无论排序顺序如何,我都希望列表将这些组一起显示。
我尝试在GroupId字段上进行汇总,但发现这不是我想要的。 我相信聚合类似于SQL中的 分组依据吗?
这是我尝试的注释代码:
var response = await _elastic.SearchAsync<FlightTicketRequestDocument>(search => search
.Index(IndexNames.FlightTicketRequests)
.AllTypes()
.Query(q => q.Bool(b => b.Must(m => m.QueryString(searchQuery.Query, Fields()))
.Filter(Filters(searchQuery))))
//.Aggregations(agg => agg.Terms("group_by_groupId", g => g.Field(f => f.GroupId)))
.Sort(p => searchQuery.Sort != null ? p.Field(searchQuery.Sort.Member, searchQuery.Sort.SortDirection) : p)
.Page(searchQuery.Page, searchQuery.PageSize), cancellationToken);
需要说明的是:无论表格的排序顺序如何,我都希望看到组中的所有客户端彼此相邻,但我仍然希望排序独立于GroupId进行
编辑我已经找到了使用Linq的解决方案,但是由于我们有1万多行数据,因此我需要对该网格使用elasticsearch。 这是linq中的解决方案: 如何在Linq GroupBy中选择前N行 。 我仍然需要帮助以弹性方式重现它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.