Las funciones SQL se desarrollan en la base de datos Oracle y están disponibles para su uso en varias declaraciones SQL apropiadas. Las funciones en SQL y la función definida por el usuario en Pl/SQL son diferentes.
En la consulta, si llama a una función SQL con un argumento con un tipo de datos diferente al esperado por la función, Oracle convertirá el tipo de datos del argumento al tipo de datos esperado antes de realizar la función SQL y si llama a la función con un argumento nulo, devolverá nulo.
Categorías de funciones:
1. Single_row_function 2. Aggregate_function 3. Analytic_function 4. Model_function 5. User_defined_function 6. Scalar functions
Algunas de estas funciones se explican a continuación.
- Función de fila única : las funciones
de fila única son aquellas funciones que devuelven una única fila de resultados para cada fila de la tabla o vista consultada. Estas funciones existen en las listas de selección, la cláusula WHERE, la cláusula START WITH, CONNECT BY y la cláusula HAVING.- Funciones_numéricas
- Carácter_función
- función_de_minería_de_datos
- Funciones de fecha y hora
- Conversion_function
- función_colección
- Función_XML
- Función agregada:
al usar la función Agregada, devolverá el resultado de una sola fila en función del grupo de filas, en lugar de filas individuales. La función Agregada aparece en las listas de selección y en la cláusula ORDER BY y HAVING. Por lo general, se usan con la cláusula GROUP BY y las declaraciones SELECT.Si usa la cláusula GROUP BY, Oracle aplica la función agregada en la lista de selección a todas las filas en la tabla o vista consultada.
Todas las funciones de agregado, excepto GROUPING y COUNT (*), ignoran los valores nulos. También puede usar la función NVL en el argumento de una función agregada para sustituir un valor en lugar de nulo.
También puede anidar funciones agregadas. Por ejemplo: –
SELECT AVG(MAX(salary) FROM employees GROUP BY department_id AVG(MAX(salary)) ---------------- 10925
Las funciones de agregado más utilizadas son AVG, COUNT, DENSE_RANK, MAX, MIN, RANK, SUM .
- Función analítica:
la función analítica calcula el valor agregado en función del grupo de filas. La diferencia entre la función analítica y la función agregada es que devuelven varias filas para cada grupo. El grupo de filas se denomina ventana y está definido por cláusula_analítica .La función analítica es el último conjunto de operaciones realizadas en una consulta, excepto la cláusula ORDER BY final.
- Cláusula_analítica
- Query_partition_clause
- Orden_por_cláusula
- Cláusula de ventana
- Funciones de modelo:
dentro de las declaraciones SELECT, las funciones de modelo se pueden usar con model_clause .Las funciones del modelo son:
- CV
- Número_iteración
- Pesentnnv
- presentev
- Anterior
- Función definida por el usuario:
puede utilizar funciones definidas por el usuario en PL/SQL o Java para proporcionar una funcionalidad que no está disponible en funciones integradas de SQL o SQL. Las funciones SQL y las funciones definidas por el usuario pueden aparecer en cualquier lugar, es decir, dondequiera que ocurra una expresión.Por ejemplo, se puede utilizar en:
- Seleccione la lista de instrucciones SELECT.
- Condición de la cláusula WHERE.
- CONECTAR POR, ORDENAR POR, COMENZAR CON y AGRUPAR POR
- La cláusula VALUES de la instrucción INSERT.
- La cláusula SET de la instrucción UPDATE.
Básicamente, usamos la función CREAR para crear funciones definidas por el usuario en SQL.
- Funciones escalares:
puede usar funciones escalares en SQL para devolver un valor único, según el valor de entrada.
Input: SELECT UCASE(geeksforgeeks) ; Output: GEEKSFORGEEKS
Las funciones escalares más utilizadas son UCASE() para convertir un campo a mayúsculas, LCASE() para convertir un campo a minúsculas, LEN() para encontrar la longitud de un campo de texto, ROUND() para redondear el número de decimales especificado , NOW() para encontrar la fecha y hora actual del sistema.
Publicación traducida automáticamente
Artículo escrito por ShubhamMaurya3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA