Tushar Iyer
2018-11-16 14:21:18 UTC
Hi all,
I'm new to the H2 community and I want to get acquainted with tailoring it
by attempting to try and add two new aggregate functions. From what I
understand, I need to write the java file to implement the interface at
org.h2.api.AggregateFunction. I was looking through the list of currently
built aggregate functions on the H2 website here
<http://www.h2database.com/html/functions.html> and thought I would try and
implement aggregate functions for '*Median*' and '*Mode*'. However, when
looking through the H2 src (Which I got from their GitHub as of Nov.14th,
2018), I found a file '*Aggregate*' in org.h2.expression.aggregate. That
file in turn extends '*AbstractAggregate*' also found in the same
directory. Neither uses the '*AggregateFunction*' interface. My concerns
are as follows:
1. The new '*Aggregate*' file already has declarations for '*Median*'
and '*Mode*', so is there a way I can still implement my own?
2. I've read through some of the other google posts, but I'm still
unsure as to how I define the SQL commands in the java class file such that
I can call my own aggregate functions
3. Assuming that I still do need to use the original interface, would I
place my .java files in the same directory?
1. If I should *not* use the original interface, can someone please
point me in the direction of the files I *should* be referencing?
Thank you all for your help!
I'm new to the H2 community and I want to get acquainted with tailoring it
by attempting to try and add two new aggregate functions. From what I
understand, I need to write the java file to implement the interface at
org.h2.api.AggregateFunction. I was looking through the list of currently
built aggregate functions on the H2 website here
<http://www.h2database.com/html/functions.html> and thought I would try and
implement aggregate functions for '*Median*' and '*Mode*'. However, when
looking through the H2 src (Which I got from their GitHub as of Nov.14th,
2018), I found a file '*Aggregate*' in org.h2.expression.aggregate. That
file in turn extends '*AbstractAggregate*' also found in the same
directory. Neither uses the '*AggregateFunction*' interface. My concerns
are as follows:
1. The new '*Aggregate*' file already has declarations for '*Median*'
and '*Mode*', so is there a way I can still implement my own?
2. I've read through some of the other google posts, but I'm still
unsure as to how I define the SQL commands in the java class file such that
I can call my own aggregate functions
3. Assuming that I still do need to use the original interface, would I
place my .java files in the same directory?
1. If I should *not* use the original interface, can someone please
point me in the direction of the files I *should* be referencing?
Thank you all for your help!
--
You received this message because you are subscribed to the Google Groups "H2 Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email to h2-database+***@googlegroups.com.
To post to this group, send email to h2-***@googlegroups.com.
Visit this group at https://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/d/optout.
You received this message because you are subscribed to the Google Groups "H2 Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email to h2-database+***@googlegroups.com.
To post to this group, send email to h2-***@googlegroups.com.
Visit this group at https://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/d/optout.