[
https://issues.apache.org/jira/browse/DERBY-3631?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Kathey Marsden resolved DERBY-3631.
-----------------------------------
Resolution: Duplicate
Fix Version/s: 10.3.3.0
10.4.1.3
10.5.0.0
Resolving as a duplicate of DERBY-3649.
> UDF used with aggregate arguments results in error 30000
> --------------------------------------------------------
>
> Key: DERBY-3631
> URL: https://issues.apache.org/jira/browse/DERBY-3631
> Project: Derby
> Issue Type: Bug
> Components: SQL
> Affects Versions: 10.3.2.1
> Environment: Linux, Derby-10.3.2.1
> Reporter: Donald Munro
> Fix For: 10.5.0.0, 10.4.1.3, 10.3.3.0
>
>
> UDF used with aggregate arguments results in error 30000: The SELECT list of
> a grouped query contains at least one invalid expression.
> CREATE FUNCTION MAXOF2(ONE DOUBLE, TWO DOUBLE) RETURNS DOUBLE
> PARAMETER STYLE JAVA NO SQL LANGUAGE JAVA
> EXTERNAL NAME 'java.lang.Math.max'
> CREATE TABLE Test( GroupCol INT, Value1 INT, Value2 INT )
> INSERT INTO Test VALUES (1, 1, 5)
> INSERT INTO Test VALUES (2, -7, 2)
> INSERT INTO Test VALUES (2, 1, -5)
> Using a built in function works:
> SELECT GroupCol, MOD(SUM(Value1), SUM(Value2)) AS ModOf2 FROM Test GROUP BY
> GroupCol
> But using the UDF does not:
> Both
> SELECT GroupCol, MAXOF2(CAST(SUM(Value1) AS DOUBLE), CAST(SUM(Value2) AS
> DOUBLE)) AS MaxOf2 FROM Test GROUP BY GroupCol
> and
> SELECT GroupCol, MAXOF2(SUM(Value1), SUM(Value2)) AS MaxOf2 FROM Test GROUP
> BY GroupCol
> fail
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.