Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
08-22-2022 11:55 AM
I managed to find the solution. In insert and update I was setting the target.
tanks @Werner Stinckens !
delta_df = DeltaTable.forPath(spark, 'dbfs:/mnt/silver/vendas/')
delta_df.alias('target').merge(
source = bronzedf.alias("source"),
condition = 'target.numero_transacao = source.numero_transacao'
) \
.whenMatchedUpdate(set =
{
"numero_transacao": "source.numero_transacao",
"numped": "source.numped",
"codcli": "source.codcli",
"codprod": "source.codprod",
"data_venda": "source.data_venda",
"quantidade": "source.quantidade",
"valor": "source.valor"
}
) \
.whenNotMatchedInsert(values =
{
"numero_transacao": "source.numero_transacao",
"numped": "source.numped",
"codcli": "source.codcli",
"codprod": "source.codprod",
"data_venda": "source.data_venda",
"quantidade": "source.quantidade",
"valor": "source.valor"
}
) \
.execute()