Details
-
Task
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
-
10.3.1-1, 10.3.1-2, 10.3.3-1
Description
With CREATE FUNCTION one can create functions in SQL, but this syntax doesn't allow one to create an aggregate function (like SUM, AVG, etc). This task is to add support for aggregate stored functions.
Syntax
is not decided yet. SQL Standard 2003 doesn't support aggregate stored functions (may be the newer standard does). Oracle, PostgreSQL, HSQL (may be more) all implement aggregate stored functions using their own incompatible syntax extensions. SQL Server and DB2 do not support creating new aggregate stored functions in SQL.
The syntax should at least allow for
- the code to return the function value
- the code to be called per row in a group, it accumulates data, does not return a value
- storage that is preserved between calls within a group
and possibly
- code to invoke between groups to reset the storage
- code to remove data from the group (useful for window functions)
Attachments
Issue Links
- relates to
-
MDEV-14520 Custom aggregate functions work incorrectly with WITH ROLLUP clause
- Closed
-
MDEV-24580 Aggregate stored function return always NULL in case of empty input set
- Open
-
MCOL-523 support user defined aggregate functions
- Closed
-
MDEV-11263 Aggregate Window Functions
- Stalled
-
MDEV-11301 SUGGESTION: Increase the number of Aggregate Functions
- Open
-
MDEV-14564 support FOR loop in stored aggregate functions
- Stalled
-
MDEV-28849 I_S tables don't tell that the stored function is AGGREGATE
- Open