reduce_multi_in_keytuple.sql 546 B

123456789101112131415161718192021
  1. /* syntax version 1 */
  2. /* postgres can not */
  3. USE plato;
  4. $udf = YQL::@@
  5. (lambda '(key stream)
  6. (PartitionByKey stream
  7. (lambda '(item) (Way item))
  8. (Void)
  9. (Void)
  10. (lambda '(listOfPairs)
  11. (FlatMap listOfPairs
  12. (lambda '(pair) (Just (AsStruct '('key (Nth key '0)) '('src (Nth pair '0)) '('cnt (Length (ForwardList (Nth pair '1)))))))
  13. )
  14. )
  15. )
  16. )
  17. @@;
  18. $r = (REDUCE Input, Input ON key,subkey USING $udf(TableRow()));
  19. SELECT key, src, cnt FROM $r ORDER BY key, src, cnt;