avg_if.sql 394 B

1234567891011121314
  1. /* syntax version 1 */
  2. /* postgres can not */
  3. $t = AsList(AsStruct(1 as a),AsStruct(2 as a));
  4. $f = AGGREGATION_FACTORY("avg_if");
  5. select Yql::Aggregate($t, AsTuple(), AsTuple(AsTuple(AsAtom("res"), $f(
  6. ListItemType(TypeOf($t)), ($z)->{return AsTuple($z.a,$z.a<2)}))));
  7. use plato;
  8. insert into @a select AsTuple(a,a<2) as aa from as_table($t);
  9. commit;
  10. select AGGREGATE_BY(aa,$f) from @a;