GREATEST
En Oracle PL/SQL la función GREATEST devuelve el mayor valor de una lista de expresiones.
SINTAXIS
GREATEST (expr1, expr2, ... expr_n)
PARÁMETROS O ARGUMENTOS
expr1 , expr2 ,. expr_n son expresiones que son evaluadas por la función MAYOR .
Teoría:
Si los tipos de datos de las expresiones son diferentes, todas las expresiones se convierten en lo que sea el tipo de datos expr1 es.
Si la comparación se basa en una comparación carácter, un carácter se considera mayor que otra si tiene un valor de conjunto de caracteres superior.
SELECT GREATEST(2, 5, 12, 3) FROM DUAL; --RETORNA 12
SELECT GREATEST ('2', '5', '12', '3') FROM DUAL; -- RETORNA 5
SELECT GREATEST('apples', 'oranges', 'bananas') FROM DUAL; -- RETORNA ORANGES
SELECT GREATEST('apples', 'applis', 'applas') FROM DUAL; --RETORNA APPLIS
LEAST
En Oracle PL/SQL la función LEAST devuelve el valor menor de una lista de expresiones.
SINTAXIS
LEAST (expr1, expr2, ... expr_n)
PARÁMETROS O ARGUMENTOS
expr1 , expr2 ,. expr_n son expresiones que son evaluadas por la función MENOS .
Teoría:
Si los tipos de datos de las expresiones son diferentes, todas las expresiones se convierten en lo que sea el tipo de datos expr1 es.
Si la comparación se basa en una comparación carácter, un carácter se considera menor que otro si tiene un valor conjunto de caracteres inferior.
Tener un valor NULL en una de las expresiones devolverá NULL como el mínimo valor.
SELECT LEAST(2, 5, 12, 3) FROM DUAL; --RETORNA 2
SELECT LEAST ('2', '5', '12', '3') FROM DUAL; --RETORNA 12
SELECT LEAST('apples', 'oranges', 'bananas') FROM DUAL; --RETORNA APPLES
SELECT LEAST('apples', 'applis', 'applas') FROM DUAL; --RETORNA APPLAS
SELECT greatest('ho', 'hola', 'uno', 'ab') from dual;
ResponderEliminarORACLE ME DEVUELVE EN ESTA 'EL UNO' EN VEZ DE 'HOLA' Y NO ENTIENDO PORQUE.
Buenos días,
ResponderEliminarPor ser varchar el dato que devuelve es el mayor en el abecedario, si quieres que te devuelva el que tenga mayor longitud debes de utilizar LENGTH para cada palabra que pusiste en la sentencia.
Saludos.
que diferencia hay entre esta y min y max ??
ResponderEliminar