private Transformer getConcreteTernaryTransformer(
      Expression expression,
      LayerReader firstParentLayerReader,
      LayerReader secondParentLayerReader,
      LayerReader thirdParentLayerReader) {
    if (expression.getExpressionType() == ExpressionType.BETWEEN) {
      BetweenExpression betweenExpression = (BetweenExpression) expression;
      return new BetweenTransformer(
          firstParentLayerReader,
          secondParentLayerReader,
          thirdParentLayerReader,
          betweenExpression.isNotBetween());
    }
    throw new UnsupportedOperationException(
        "Unsupported Expression Type: " + expression.getExpressionType());
  }
Responsible for constructing {@link IntermediateLayer} through Expression.
iotdb-core/datanode/src/main/java/org/apache/iotdb/db/queryengine/plan/expression/visitor/IntermediateLayerVisitor.java