Mercurial > urweb
comparison lib/ur/basis.urs @ 1777:59b07fdae1ff
Partitioning and ordering for window functions
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Sat, 02 Jun 2012 16:47:09 -0400 |
parents | 8f28c3295148 |
children | 818d4097e2ed |
comparison
equal
deleted
inserted
replaced
1776:8f28c3295148 | 1777:59b07fdae1ff |
---|---|
550 | 550 |
551 class sql_summable | 551 class sql_summable |
552 val sql_summable_int : sql_summable int | 552 val sql_summable_int : sql_summable int |
553 val sql_summable_float : sql_summable float | 553 val sql_summable_float : sql_summable float |
554 val sql_summable_option : t ::: Type -> sql_summable t -> sql_summable (option t) | 554 val sql_summable_option : t ::: Type -> sql_summable t -> sql_summable (option t) |
555 val sql_avg : t ::: Type -> nt ::: Type -> sql_summable t -> nullify t nt -> sql_aggregate t nt | 555 val sql_avg : t ::: Type -> sql_summable t -> sql_aggregate t (option float) |
556 val sql_sum : t ::: Type -> nt ::: Type -> sql_summable t -> nullify t nt -> sql_aggregate t nt | 556 val sql_sum : t ::: Type -> nt ::: Type -> sql_summable t -> nullify t nt -> sql_aggregate t nt |
557 | 557 |
558 class sql_maxable | 558 class sql_maxable |
559 val sql_maxable_int : sql_maxable int | 559 val sql_maxable_int : sql_maxable int |
560 val sql_maxable_float : sql_maxable float | 560 val sql_maxable_float : sql_maxable float |
562 val sql_maxable_time : sql_maxable time | 562 val sql_maxable_time : sql_maxable time |
563 val sql_maxable_option : t ::: Type -> sql_maxable t -> sql_maxable (option t) | 563 val sql_maxable_option : t ::: Type -> sql_maxable t -> sql_maxable (option t) |
564 val sql_max : t ::: Type -> nt ::: Type -> sql_maxable t -> nullify t nt -> sql_aggregate t nt | 564 val sql_max : t ::: Type -> nt ::: Type -> sql_maxable t -> nullify t nt -> sql_aggregate t nt |
565 val sql_min : t ::: Type -> nt ::: Type -> sql_maxable t -> nullify t nt -> sql_aggregate t nt | 565 val sql_min : t ::: Type -> nt ::: Type -> sql_maxable t -> nullify t nt -> sql_aggregate t nt |
566 | 566 |
567 con sql_partition :: {{Type}} -> {{Type}} -> {Type} -> Type | |
568 val sql_no_partition : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type} | |
569 -> sql_partition tables agg exps | |
570 val sql_partition : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type} -> t ::: Type | |
571 -> sql_exp tables agg exps disallow_window t | |
572 -> sql_partition tables agg exps | |
573 | |
567 con sql_window :: {{Type}} -> {{Type}} -> {Type} -> Type -> Type | 574 con sql_window :: {{Type}} -> {{Type}} -> {Type} -> Type -> Type |
568 val sql_window : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type} | 575 val sql_window : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type} |
569 -> t ::: Type | 576 -> t ::: Type |
570 -> sql_window tables agg exps t | 577 -> sql_window tables agg exps t |
578 -> sql_partition tables agg exps | |
579 -> sql_order_by tables exps | |
571 -> sql_exp tables agg exps allow_window t | 580 -> sql_exp tables agg exps allow_window t |
572 | 581 |
573 val sql_window_aggregate : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type} | 582 val sql_window_aggregate : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type} |
574 -> t ::: Type -> nt ::: Type | 583 -> t ::: Type -> nt ::: Type |
575 -> sql_aggregate t nt | 584 -> sql_aggregate t nt |
576 -> sql_exp tables agg exps allow_window t | 585 -> sql_exp tables agg exps disallow_window t |
577 -> sql_window tables agg exps nt | 586 -> sql_window tables agg exps nt |
578 val sql_window_count : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type} | 587 val sql_window_count : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type} |
579 -> sql_window tables agg exps int | 588 -> sql_window tables agg exps int |
580 val sql_window_rank : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type} | 589 val sql_window_rank : tables ::: {{Type}} -> agg ::: {{Type}} -> exps ::: {Type} |
581 -> sql_window tables agg exps int | 590 -> sql_window tables agg exps int |