astro.sql.operators.merge
Module Contents
Classes
Merge the source table rows into a destination table. |
Attributes
- astro.sql.operators.merge.MERGE_COLUMN_TYPE
- class astro.sql.operators.merge.MergeOperator(*, target_table, source_table, columns, if_conflicts, target_conflict_columns, task_id='', **kwargs)
Bases:
airflow.models.baseoperator.BaseOperator
Merge the source table rows into a destination table.
- Parameters
source_table (astro.sql.table.Table) – Contains the rows to be merged to the target_table (templated)
target_table (astro.sql.table.Table) – Contains the destination table in which the rows will be merged (templated)
columns (MERGE_COLUMN_TYPE) – List/Tuple of columns if name of source and target tables are same. If the column names in source and target tables are different pass a dictionary of source_table columns names to target_table columns names. Examples:
["sell", "list"]
or{"s_sell": "t_sell", "s_list": "t_list"}
target_conflict_columns (List[str]) – List of cols where we expect to have a conflict while combining
if_conflicts (astro.constants.MergeConflictStrategy) – The strategy to be applied if there are conflicts.
task_id (str) –
kwargs (Any) –
- template_fields = ['target_table', 'source_table']
- execute(context)
- Parameters
context (dict) –
- Return type