Documentaciónbuscar(tabla, campo, val)

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

Nombre

buscar - Devuelve el primer registro cuyo campo coincide con un valor.

Sinopsis

registro = tablas.buscar(tabla, campo, val)

Descripcion

Recorre una TABLA y devuelve el primer registro para el cual tabla[i][campo] == val.

Es util para:

  • recuperar rapidamente una coincidencia puntual
  • consultar un registro sin trabajar con una subtabla completa
  • expresar una busqueda simple con un nombre corto y natural

Comportamiento

  • Recorre la tabla desde el primer registro hasta el ultimo.
  • Si encuentra una coincidencia, retorna ese registro.
  • Si no encuentra coincidencias, retorna {}.
  • Los valores "TODAS" y "todas" conservan el atajo historico y retornan la tabla completa.

Funciones API relacionadas

  • tablas.buscar_todos()
  • 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

REGISTRO|TABLA - Primer registro coincidente, {} si no hay coincidencias, o la tabla completa en el atajo historico TODAS/todas.

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(persona, campo, "Concepcion")

    tablas.imprimir(retorno)

FINAL