Interface QueryOperation

All Superinterfaces:
Operation

@PublicEvolving public interface QueryOperation extends Operation
Base class for representing an operation structure behind a user-facing Table API.

It represents an operation that can be a node of a relational query. It has a schema, that can be used to validate a QueryOperation applied on top of this one.

  • Method Details

    • getResolvedSchema

      ResolvedSchema getResolvedSchema()
      Resolved schema of this operation.
    • asSerializableString

      default String asSerializableString()
      Returns a SQL string that fully serializes this instance. The serialized string can be used for storing the query in e.g. a Catalog as a view.
      Returns:
      detailed string for persisting in a catalog
      See Also:
    • asSerializableString

      default String asSerializableString(SqlFactory sqlFactory)
      Returns a SQL string that fully serializes this instance. The serialized string can be used for storing the query in e.g. a Catalog as a view.
      Parameters:
      sqlFactory - can be used to customize the serialization to a SQL string
      Returns:
      Flink SQL string for persisting in a catalog
      See Also:
    • getChildren

      List<QueryOperation> getChildren()
    • accept

      default <T> T accept(org.apache.flink.table.operations.QueryOperationVisitor<T> visitor)