max.sql 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. /* syntax version 1 */
  2. /* postgres can not */
  3. $t = SELECT * FROM AS_TABLE([<|key: 1, value: 2|>,<|key: 1, value: 3|>]);
  4. $p =
  5. SELECT
  6. key,max(value) as a
  7. FROM $t
  8. GROUP BY
  9. key
  10. with combine
  11. ;
  12. $p = PROCESS $p;
  13. --select FormatType(TypeOf($p));
  14. select * from $p;
  15. $p = SELECT
  16. key,max(a) as a
  17. FROM $p
  18. GROUP BY
  19. key
  20. with combinestate
  21. ;
  22. $p = PROCESS $p;
  23. --select FormatType(TypeOf($p));
  24. select * from $p;
  25. $p = SELECT
  26. key,max(a) as a
  27. FROM $p
  28. GROUP BY
  29. key
  30. with mergestate
  31. ;
  32. $p = PROCESS $p;
  33. --select FormatType(TypeOf($p));
  34. select * from $p;
  35. $p1 = SELECT
  36. key,max(a) as a
  37. FROM $p
  38. GROUP BY
  39. key
  40. with mergefinalize
  41. ;
  42. $p1 = PROCESS $p1;
  43. --select FormatType(TypeOf($p1));
  44. select * from $p1;
  45. $p2 = SELECT
  46. key,max(a) as a
  47. FROM (select key, just(a) as a from $p)
  48. GROUP BY
  49. key
  50. with mergemanyfinalize
  51. ;
  52. $p2 = PROCESS $p2;
  53. --select FormatType(TypeOf($p2));
  54. select * from $p2;
  55. $p3 =
  56. SELECT
  57. key,max(value) as a
  58. FROM $t
  59. GROUP BY
  60. key
  61. with finalize
  62. ;
  63. $p3 = PROCESS $p3;
  64. --select FormatType(TypeOf($p));
  65. select * from $p3;