flatten_dict.sql 439 B

12345678910111213
  1. /* syntax version 1 */
  2. /* postgres can not */
  3. pragma sampleselect;
  4. $data_dict = (select mod, YQL::ToIndexDict(ListSort(aggregate_list(key))) as dk, ListSort(aggregate_list(subkey)) as ls, ListSort(aggregate_list(value)) as lv from plato.Input group by cast(key as uint32) % 10 as mod);
  5. select
  6. mod, iv, ls,
  7. dd.di.0 as key,
  8. dd.di.1 as value
  9. from $data_dict as dd
  10. flatten by (dk as di, lv as iv, ls)
  11. order by mod, iv, ls, key, value;