Differences Between Table Functions and Table Operators - Advanced SQL Engine - Teradata Database

SQL External Routine Programming

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
July 2021
Language
English (United States)
Last Update
2021-07-27
dita:mapPath
rin1593638965306.ditamap
dita:ditavalPath
rin1593638965306.ditaval
dita:id
B035-1147
lifecycle
previous
Product Category
Teradata Vantageā„¢
  • The inputs and outputs for table operators are a set of rows (a table) and not columns. The default format of a row is IndicData.
  • In a table function, the row iterator is outside of the function and the iterator calls the function for each input row. In the table operators, the operator writer is responsible for iterating over the input and producing the output rows for further consumption. The table operator itself is called only once. This reduces per row costs and provides more flexible read/write patterns.
  • The operator writer has the option of establishing the output characteristics via a user-defined contract function. The contract function is invoked at runtime when the table operator is being parsed. Therefore, the operator has full flexibility to determine the output from the input.
  • The table operators can use custom argument clauses to make them polymorphic.