private static boolean hasSingleDistinctInput(AggregationNode aggregationNode) {
    return extractArgumentSets(aggregationNode).count() == 1;
  }
Implements distinct aggregations with similar inputs by transforming plans of the following
shape:

<pre>
- Aggregation
       GROUP BY (k)
       F1(DISTINCT s0, s1, ...),
       F2(DISTINCT s0, s1, ...),
    - X
</pre>

into

<pre>
- Aggregation
         GROUP BY (k)
         F1(s0, s1, ...)
         F2(s0, s1, ...)
     - Aggregation
            GROUP BY (k, s0, s1, ...)
         - X
</pre>

<p>Assumes s0, s1, ... are symbol references (i.e., complex expressions have been pre-projected)
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/relational/planner/iterative/rule/SingleDistinctAggregationToGroupBy.java