Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

473
Vistas
¿Cómo seleccionar dinámicamente columnas de una tabla determinada en el procedimiento almacenado de copo de nieve?

Estoy tratando de crear un procedimiento que elija columnas dinámicamente de dos tablas. Ya tengo una consulta codificada que funciona bien.

#Consulta existente

 create table mydb.result_table as select t1.id, t1.name, t1.place, t1.product t1.prize t2.id, t2.name, t2.place, t2.product, t2.prize from source_db.source_table t1 full outer join target_db_target_table t2 on t1.id=t2.id and t1.name=t2.name where t1.place<>t2.place

Ahora necesito crear un procedimiento que básicamente seleccione la columna dinámicamente del nombre de la tabla dada y una ambas con las claves dadas

así que algo como a continuación

 CREATE OR REPLACE PROCEDURE result(source_db varchar, source_table VARCHAR, targt_db varchar, target_table VARCHAR, key_join varchar<not sure can pass list>, filter_col varchar ) returns string not null language javascript as $$ var query= `create table mydb.result_table as select t1.<all columns from source_db and source_table> t2.<all columns from targt_db and target_table > from <source_db and source_table> as t1 full outer join <target_db_target_table> as t2 on <key_join> where <t1.filter_col <> t2.filter_col> ` return 'success'; $$;

no veo un ejemplo de selección dinámica de columnas para este tipo de caso de uso. ¿Alguna solución a esto?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Debe consultar el esquema de información para la lista de columnas en cada tabla y usar el resultado para construir dinámicamente su declaración SQL.

También debe tener en cuenta que el mismo nombre de columna existe en varias tablas, ya que obviamente no puede aparecer la misma columna varias veces en una tabla, por lo que deberá cambiar el nombre de las columnas dinámicamente según corresponda.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Simplemente consulta la vista INFORMACION_ESQUEMA.COLUMNAS para acceder a las columnas de la tabla y luego puedes construir tu consulta dinámicamente:

https://docs.snowflake.com/en/sql-reference/info-schema/columns.html

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda