The control statements of SQL stored procedures make SQL a computationally complete (that is, procedural) language. You can write your own UDFs and external stored procedures in C, C++, or Java to define what you want.
Procedural languages contain functions that perform complex operations. The usual SQL statements do not support many functions. However, to reduce the reliance on ancillary application code, SQL does support the following standard functions:
- Scalar
- Aggregate
- Ordered analytical
In addition, you can create scalar, aggregate, and table functions to meet specific needs.