Adding New Functions to MySQL
There are two ways to add new functions to MySQL:
You can add the function through the user-definable function (UDF) interface. User-definable functions are added and removed dynamically using the CREATE FUNCTION and DROP FUNCTION statements. See Section 9.2.1.
You can add the function as a native (built-in) MySQL function. Native functions are compiled into the mysqld server and become available on a permanent basis.
Each method has advantages and disadvantages:
If you write a user-definable function, you must install the object file in addition to the server itself. If you compile your function into the server, you don’t need to do that.
You can add UDFs to a binary MySQL distribution. Native functions require you to modify a source distribution.
If you upgrade your MySQL distribution, you can continue to use your previously installed UDFs. For native functions, you must repeat your modifications each time you upgrade.
Whichever method you use to add new functions, they may be used just like native functions such as ABS( ) or SOUNDEX( ).
CREATE FUNCTION/DROP FUNCTION Syntax
CREATE [AGGREGATE] FUNCTION function_name RETURNS {STRING|REAL|INTEGER}
SONAME shared_library_name
DROP FUNCTION function_nameA user-definable function (UDF) is a way to extend MySQL with a new function that works like native (built-in) MySQL functions such as ABS( ) and CONCAT( ).
AGGREGATE is a new option for MySQL Version 3.23. An AGGREGATE function works exactly like a native ...