pg_iterate.sql 658 B

12345678910111213141516171819202122
  1. pragma warning("disable","4510");
  2. $init = ListCreate(Struct<n:Int32>);
  3. $transform = ($value)->{
  4. return ListMap(ListFilter($value, ($r)->($r.n<5)), ($r)->(<|n:$r.n + 1|>));
  5. };
  6. select * from AS_TABLE(Yql::PgIterateAll($init,$transform)) order by n;
  7. $init = [<|n:1|>];
  8. $transform = ($value)->{
  9. return ListMap(ListFilter($value, ($r)->($r.n<5)), ($r)->(<|n:$r.n + 1|>));
  10. };
  11. select * from AS_TABLE(Yql::PgIterateAll($init,$transform)) order by n;
  12. $init = [<|n:1|>, <|n:1|>, <|n:2|>];
  13. $transform = ($value)->{
  14. return ListFlatMap($value, ($_r)->([<|n:1|>,<|n:2|>,<|n:2|>]));
  15. };
  16. select * from AS_TABLE(Yql::PgIterate($init,$transform)) order by n;