Documentaciónmin_en_campo(tabla, campo)
Nombre
min_en_campo - Devuelve el menor valor encontrado en un campo de la tabla.
Sinopsis
minimo = tablas.min_en_campo(tabla, campo)
Descripcion
Recorre una TABLA y compara los valores del campo indicado para obtener el menor de ellos.
En esta version soporta campos de tipo NUMERICO y STRING.
Esta funcion es polimorfica: retorna un valor del mismo tipo escalar que tenga el campo inspeccionado.
Es util para:
- encontrar el menor valor numerico de una columna
- obtener el valor minimo segun orden lexicografico en campos de texto
- resumir rapidamente extremos de una tabla
Comportamiento
- Detecta el tipo real del campo usando
TIPO_DATO(tabla, campo). - Toma el primer valor como referencia inicial y compara el resto.
- Retorna el menor valor encontrado.
- Si el campo no existe o tiene un tipo no soportado, produce error.
Funciones API relacionadas
tablas.contar_todos()tablas.agrupar_por_campo()tablas.contar()tablas.valores_distintos()tablas.buscar_distintos()tablas.max_en_campo()tablas.totaliza_campo()tablas.promedio_campo()
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
| tabla | TABLA | Tabla a analizar. |
| campo | STRING | Campo numérico. |
Valor de retorno
ANY - Menor valor encontrado en el campo. El retorno es polimorfico: si el campo es NUMERICO, devuelve NUMERICO; si el campo es STRING, devuelve STRING.
Ejemplo
ejemplo.blox
INCLUIR "tablas.api"
FUNCION PRINCIPAL
INICIO
TABLA persona, filtrado
NUMERICO i, max
STRING campo, max_str
persona = {
nombre = "Carlos",
edad = 30,
ciudad = "Asuncion"
}
persona = {
nombre = "Juan",
edad = 21,
ciudad = "Encarnacion"
}
persona = {
nombre = "Roberto",
edad = 45,
ciudad = "Concepcion",
activo = VERDADERO
}
persona = {
nombre = "Maria",
edad = 19,
ciudad = "Concepcion"
}
//
// Testado OK
//
// Halla el registro con el maximo valor en un cierto campo.
//
campo = "nombre"
max_str = tablas.max_en_campo(persona, campo)
filtrado = tablas.filtrar(persona, campo, max_str)
IMPRIMIR("\nEl mayor valor de campo en todos los registros de la tabla es: ", max_str)
IMPRIMIR("\nEl registro con la mayor edad es:\n", filtrado[1])
max_str = tablas.min_en_campo(persona, campo)
filtrado = tablas.filtrar(persona, campo, max_str)
IMPRIMIR("\n\nEl menor valor en todos los registros de la tabla es: ", max_str)
IMPRIMIR("\nEl registro con la menor edad es:\n", filtrado[1])
FINAL