Documentaciónseleccionar_campos(tabla, campos)

seleccionar_campos(tabla,campos)\texttt{seleccionar\_campos}(tabla, campos)

Nombre

seleccionar_campos - Proyecta una tabla a un subconjunto de campos.

Sinopsis

salida = tablas.seleccionar_campos(tabla, campos)

Descripcion

Recorre una TABLA y construye otra TABLA que conserva los mismos registros, pero copiando solo los campos listados en campos.

Es util para:

  • reducir una tabla a las columnas relevantes
  • preparar salidas mas compactas para impresion o exportacion
  • separar una vista parcial de una tabla mas grande

Comportamiento

  • Recorre los registros de la tabla original en el mismo orden.
  • Para cada registro, copia solo los campos pedidos que realmente existan.
  • Si un campo solicitado no existe en un registro, simplemente se omite.
  • Si campos esta vacio, retorna una tabla vacia.

Funciones API relacionadas

  • tablas.seleccionar_campo()
  • tablas.valor_por_campo()

Parámetros

ParámetroTipoDescripción
tablaTABLATabla origen.
camposVECTOR STRINGVector con los nombres de los campos a conservar.

Valor de retorno

TABLA - Nueva tabla con los mismos registros, pero conteniendo solo los campos indicados.

Ejemplo

ejemplo.blox
INCLUIR "tablas.api"


FUNCION PRINCIPAL
INICIO

    TABLA personas, vista
    STRING campos[2]

    personas[1] = { id = 1, nombre = "Ana", ciudad = "Asuncion", edad = 22 }
    personas[2] = { id = 2, nombre = "Beto", edad = 31 }
    personas[3] = { id = 3, nombre = "Carla", ciudad = "Encarnacion", edad = 27 }

    campos[1] = "nombre"
    campos[2] = "ciudad"

    IMPRIMIR("\nTABLA ORIGINAL")
    tablas.imprimir(personas)

    vista = tablas.seleccionar_campos(personas, campos)

    IMPRIMIR("\nTABLA PROYECTADA")
    tablas.imprimir(vista)

FINAL