Documentaciónbuscar_todos(tabla, campo, val)

buscar_todos(tabla,campo,val)\texttt{buscar\_todos}(tabla, campo, val)

Nombre

buscar_todos - Devuelve todos los registros cuyo campo coincide con un valor dado.

Sinopsis

subtabla = tablas.buscar_todos(tabla, campo, val)

Descripcion

Recorre una TABLA y devuelve otra TABLA con todos los registros para los cuales tabla[i][campo] == val.

Es la forma canónica de la búsqueda plural en este bloque de la API.

Es util para:

  • extraer todos los registros que coinciden con un valor
  • trabajar con una subtabla sin modificar la original
  • encadenar una busqueda antes de ordenar, mezclar o imprimir

Comportamiento

  • Verifica que el campo exista y tenga un tipo compatible.
  • Compara el campo indicado contra val en cada registro.
  • Devuelve una subtabla con todas las coincidencias.
  • Si no encuentra registros compatibles, retorna una tabla vacia.

Funciones API relacionadas

  • tablas.buscar()
  • tablas.buscar_por_valor()
  • tablas.buscar_indice()
  • tablas.buscar_indices()
  • tablas.buscar_primero_por_valor()
  • tablas.filtrar()

Parámetros

ParámetroTipoDescripción
tablaTABLATabla donde buscar.
campoSTRINGCampo a comparar.
valANYValor buscado.

Valor de retorno

TABLA - Subtabla con todos los registros que cumplen la condicion.

Ejemplo

ejemplo.blox
INCLUIR "tablas.api"

FUNCION PRINCIPAL
INICIO

	TABLA  persona, retorno
	STRING campo

    persona = {
        nombre = "Carlos",
        edad = 30,
        ciudad = "Asuncion",
    }
    persona = {
        nombre = "Juan",
        edad = 21,
        ciudad = "Encarnacion",
    }
    persona = {
        nombre = "Roberto",
        edad = 45,
        ciudad = "Concepcion",
    }
    persona = {
        nombre = "Maria",
        edad = 19,
        ciudad = "Concepcion",
    }

    campo = "ciudad"
	retorno = tablas.buscar_todos(persona, campo, "Concepcion")

    tablas.imprimir(retorno)

FINAL