You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Yury Gerzhedovich (Jira)" <ji...@apache.org> on 2023/02/23 12:27:00 UTC

[jira] [Updated] (IGNITE-18173) SQL: implement EVERY and SOME aggregate functions

     [ https://issues.apache.org/jira/browse/IGNITE-18173?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Yury Gerzhedovich updated IGNITE-18173:
---------------------------------------
    Labels: calcite ignite-3  (was: calcite calcite3-required ignite-3)

> SQL: implement EVERY and SOME aggregate functions
> -------------------------------------------------
>
>                 Key: IGNITE-18173
>                 URL: https://issues.apache.org/jira/browse/IGNITE-18173
>             Project: Ignite
>          Issue Type: Improvement
>          Components: sql
>            Reporter: Andrey Khitrin
>            Assignee: Aleksey Plekhanov
>            Priority: Major
>              Labels: calcite, ignite-3
>             Fix For: 2.15
>
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> Aggregate functions EVERY and SOME are part of SQL standard. Unfortunately, they're not implemented in AI3 beta1 yet. Could you please implement them?
> In AI2, they work in the following manner:
> {code:sql}
> create table tmp_table_age_name_wage (key_field INT PRIMARY KEY,AGE INT,field1 VARCHAR,field2 INT);
> insert into tmp_table_age_name_wage (key_field,AGE,field1,field2) values (1, 42,'John',100000);
> insert into tmp_table_age_name_wage (key_field,AGE,field1,field2) values (2, 43,'Jack',50000);
> insert into tmp_table_age_name_wage (key_field,AGE,field1,field2) values (3, 42,'Jen',30000);
> insert into tmp_table_age_name_wage (key_field,AGE,field1,field2) values (4, 42,'Jim',70000);
> insert into tmp_table_age_name_wage (key_field,AGE,field1,field2) values (5, 41,'Jess',30000);
> insert into tmp_table_age_name_wage (key_field,AGE,field1,field2) values (6, 50,'Joe',40000);
> insert into tmp_table_age_name_wage (key_field,AGE,field1,field2) values (7, 43,'Jeff',20000);
> insert into tmp_table_age_name_wage (key_field,AGE,field1,field2) values (8, 32,'Joel',80000);
> insert into tmp_table_age_name_wage (key_field,AGE,field1,field2) values (9, 33,'Joe',30000);
> insert into tmp_table_age_name_wage (key_field,AGE,field1,field2) values (10, 41,'Jill',90000);
> SELECT EVERY(AGE > 20) FROM tmp_table_age_name_wage;            --> true
> SELECT EVERY(AGE > 40) FROM tmp_table_age_name_wage;            --> false
> SELECT SOME(field2 = 90000) FROM tmp_table_age_name_wage;       --> true
> SELECT SOME(field2 <> 90000) FROM tmp_table_age_name_wage;      --> true
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)