Categories of SQL Functions - GeeksforGeeks

02 Dec, 2021
SQL Functions are developed into Oracle Database and are available to use in various appropriate SQL Statements. Functions in SQL and User defined function in Pl/SQL both are different. 
In query, if you call a SQL function with an argument with different datatype other than expected by the function, then Oracle will convert the argument datatype to the expected datatype before performing the SQL function and if you call function with null argument, it will return null. 
Categories of Functions: 
1. Single_row_function
2. Aggregate_function
3. Analytic_function
4. Model_function
5. User_defined_function 
6. Scalar functions 
Some of these functions are explained as following below. 
Single row function: Single row functions are those functions which return a single result row for each row of queried table or view. This functions exists in Select lists, WHERE clause, START WITH, CONNECT BY clause and HAVING clause. Numeric_functionsCharacter_functionData_mining_functionDatetime_functionsConversion_functionCollection_functionXML_function
Numeric_functions
Character_function
Data_mining_function
Datetime_functions
Conversion_function
Collection_function
XML_function
Aggregate function: While using Aggregate function it will returns single row result based on group of rows, instead of single rows.Aggregate function appears in Select lists and ORDER BY and HAVING clause.They are usually used with GROUP BY clause and SELECT Statements. If you use GROUP BY clause, then Oracle applies aggregate function in the select list to all the rows in the queried table or view. All the Aggregate functions except GROUPING and COUNT(*) ignores null values. You can also use NVL function in the argument to an aggregate function to substitute a value in place of null. You can also nest aggregate functions.For example:- 
If you use GROUP BY clause, then Oracle applies aggregate function in the select list to all the rows in the queried table or view. 
All the Aggregate functions except GROUPING and COUNT(*) ignores null values. You can also use NVL function in the argument to an aggregate function to substitute a value in place of null. You can also nest aggregate functions.For example:- 
SELECT AVG(MAX(salary) 
FROM employees 
GROUP BY department_id

AVG(MAX(salary))
----------------
         10925 
Most frequently used Aggregate functions are AVG, COUNT, DENSE_RANK, MAX, MIN, RANK, SUM. 
Analytic function: Analytic function calculate aggregate value based on group of rows.Difference between Analytic function and Aggregate function is they return multiple rows for each group. The group of rows is termed as window and it is defined by analytic_clause. Analytic function are the last set of operations performed in a query except the final ORDER BY clause. Analytic_clauseQuery_partition_clauseOrder_by_clauseWindowing_clause
Analytic function are the last set of operations performed in a query except the final ORDER BY clause. 
Analytic_clause
Query_partition_clause
Order_by_clause
Windowing_clause
Model Functions: Within SELECT statements, Model Functions can be used with model_clause. Model Functions are: CVIteration_NumberPesentnnvPresentvPrevious
Model Functions are: 
CV
Iteration_Number
Pesentnnv
Presentv
Previous
User defined function: You can use User defined functions in PL/SQL or Java to provide functionality that is not available in SQL or SQL built in functions. SQL functions and User defined functions can be appear anywhere, that is, wherever an expression occur. For example, It can be used in: Select list of SELECT statement.Condition of WHERE clause.CONNECT BY, ORDER BY, START WITH and GROUP BYThe VALUES clause of INSERT statement.The SET clause of UPDATE statement. Basically we use CREATE Function to create User defined functions in SQL. 
For example, It can be used in: 
Select list of SELECT statement.
Condition of WHERE clause.
CONNECT BY, ORDER BY, START WITH and GROUP BY
The VALUES clause of INSERT statement.
The SET clause of UPDATE statement. Basically we use CREATE Function to create User defined functions in SQL. 
Scalar functions: You can use scalar functions in SQL to return a single value, based on the input value. 
Input: SELECT UCASE(geeksforgeeks) ;
Output: GEEKSFORGEEKS 
Most frequently used Scalar functions are UCASE() to convert a field to upper case, LCASE() to convert a field to lower case, LEN() to find the length of a text field, ROUND() to round the number of decimals specified, NOW() to find the current system date and time. 
khushboogoyal499
surinderdawra388
sagar0719kumar
germanshephered48
DBMS-SQL
SQL-Functions
DBMS
SQL
DBMS
SQL
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Comments
Old Comments
Second Normal Form (2NF)
Introduction of Relational Algebra in DBMS
KDD Process in Data Mining
Relational Model in DBMS
What is Temporary Table in SQL?
SQL | DDL, DQL, DML, DCL and TCL Commands
How to find Nth highest salary from a table
SQL | ALTER (RENAME)
How to Update Multiple Columns in Single Update Statement in SQL?
MySQL | Group_CONCAT() Function