首页 > 解决方案 > 如何在 nushell 中过滤 group-by 的 value 列中的行数?

问题描述

我想做相当于 SQL 中的 HAVING 子句。现实生活中的描述是我试图找到指向两个(或更多)索引及其索引名称的 Elasticsearch 别名。数据看起来像这样

我首先进行分组,然后将它们旋转以获取行,其中第一列是组键,第二列是具有 n 行的表。获取此表的命令是open file.txt | lines | split-column " " --collapse-empty Alias Index | group by Alias | pivot

 ──┬───────────────┬────────────────
 # │ Column0       │ Column1 
───┼───────────────┼────────────────
 0 │ abcd_20200430 │ [table 1 rows]
 1 │ abcd_20200501 │ [table 3 rows]
 2 │ abcd_20200502 │ [table 2 rows] 
 3 │ abcd_20200503 │ [table 1 rows] 
 4 │ abcd_20200504 │ [table 1 rows]

我想按 Column1 超过 1 行的行过滤此表。我该怎么做?

| where Column1.count > 1不工作

标签: elasticsearch

解决方案


您可以尝试添加另一列及其大小作为解决方法。像这样的东西:

open file.txt | lines | split-column " " --collapse-empty Alias Index | group by Alias | pivot | default size 0 | update size { get Column1 | count }

推荐阅读