Documentaciónbuscar_por_valor(tabla, campo, val)

buscar_por_valor(tabla,campo,val)\texttt{buscar\_por\_valor}(tabla, campo, val)

Nombre

buscar_por_valor - Alias de compatibilidad para tablas.buscar_todos().

Sinopsis

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

Descripcion

Mantiene el nombre historico de esta busqueda plural y delega el trabajo en tablas.buscar_todos(tabla, campo, val).

Se conserva por compatibilidad con codigo existente, pero la forma preferida en esta API es tablas.buscar_todos().

Comportamiento

  • 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_todos()
  • 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, filtrado, retorno
	NUMERICO i, cant, edad
	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",
    }


//
// Testado OK
//
//
// Busca un registro en una tabla. Recibe campo y valor.
// Retorna el primer registro encontrado
//

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

    SI (retorno.dim > 0) ENTONCES
        IMPRIMIR(retorno[1])
    SINO 
        IMPRIMIR("\nNo se ha encontrado este dato en ningun registro.")
    FIN_SI


FINAL