Copyright | (c) Soostone Inc 2020 |
---|---|
License | AllRightsReserved |
Stability | experimental |
Portability | POSIX |
Safe Haskell | None |
Language | Haskell2010 |
Synopsis
- topSelect :: [Selected SExp] -> [Selected SExp] -> SExp -> Q a -> Q ()
- combineTablesOuter :: DefinedRelation -> [(DefinedRelation, [Ref Relation -> SExp])] -> Q ()
- normalizeExtremes :: DatePart -> Int -> Relation -> (Ref Relation -> SExp) -> [(Ref Relation -> SExp, Ref a)] -> Q [Ref SExp]
- computePercentiles :: Int -> Relation -> SExp -> [SExp] -> Name -> Q (Ref SExp)
- percentileColumns :: Int -> SExp -> [SExp] -> ([Selected SExp], Ref Relation -> SExp)
Documentation
:: [Selected SExp] | Partition within this window; i.e. the unique entity |
-> [Selected SExp] | Select the top-by-count among these breakdowns - e.g. "name" of a product |
-> SExp | Numeric expression to determine frequency |
-> Q a | Rest of the query that should contain the FROM and any WHERE clauses |
-> Q () |
Select the values with the highest occurence within partitions.
:: DefinedRelation | |
-> [(DefinedRelation, [Ref Relation -> SExp])] | Table definitions and primary keys each shares with the first table in list |
-> Q () |
TODO. Subtract primary keys from combined fields and explicitly add PK selects.