Untitled
unknown
plain_text
a year ago
1.1 kB
5
Indexable
def join_stores(self, source, target, fields):
"""
Realiza un join entre dos tablas usando atoti.
Args:
source (str): Nombre de la tabla fuente (source).
target (str): Nombre de la tabla destino (target).
fields (dict): Diccionario que mapea columnas de la tabla fuente a la tabla destino.
Ejemplo: {"col1": "col2", "col3": "col4"}.
"""
source_table = self.get_table(source) # Tabla fuente
target_table = self.get_table(target) # Tabla destino
# Construir la condición para el mapeo basado en las columnas
condition = None
for source_col, target_col in fields.items():
# Crear la condición de igualdad entre columnas
current_condition = source_table[source_col] == target_table[target_col]
# Combinar condiciones si ya existe una
condition = current_condition if condition is None else condition & current_condition
# Realizar el join usando la condición
source_table.join(target_table, condition)
Editor is loading...
Leave a Comment