packages feed

relational-record 0.0.1.1 → 0.0.1.2

raw patch · 2 files changed

+86/−12 lines, 2 files

Files

relational-record.cabal view
@@ -1,5 +1,5 @@ name:                relational-record-version:             0.0.1.1+version:             0.0.1.2 synopsis:            Meta package of Relational Record description:         Meta package to install Relational Record quickly homepage:            http://khibino.github.io/haskell-relational-record/
src/Database/Relational/Query/Documentation.hs view
@@ -40,7 +40,22 @@   relation,   aggregateRelation, -  -- *** Projection Operators+  -- *** Projection+  -- $projection++  -- **** Projection Type+  -- $projectionType+  Projection,++  Flat, Aggregated,++  Exists, OverWindow,++  -- **** Projection Path+  -- $projectionPath+  Pi, (!), (<.>),++  -- **** Projection Operators   -- $projectionOperators   (.=.), (.<.), (.<=.), (.>.), (.>=.), (.<>.),   casesOrElse, case',@@ -67,6 +82,9 @@    -- *** Maybe Projections   -- $maybeProjection+  (?!), (?!?),+  (<?.>), (<?.?>),+   (?+?),   negateMaybe,   sumMaybe,@@ -139,7 +157,7 @@  -}  {- $monadicContext-This DSL accumulates query structures into monadic context.+On building query, query structures can be accumulated in monadic context.  -}  {- $monadicOperator@@ -158,40 +176,96 @@ Not monadic style join is supported by some direct join operators.  'inner', 'left', 'right', 'full' operators can construct join products directly like SQL.-'on'' specifies condition of join product.+'on'' operator specifies condition of join product.  -}  {- $finalize-Several operators are defined to finalize query monadic context.+Several operators are defined to make 'Relation' type with finalizing query monadic context.  'relation' operator finalizes flat (not aggregated) query monadic context, and 'aggregateRelation' operator finalizes aggregated query monadic context.  -} +{- $projection+SQL expression can be projected to haskell phantom type in this DSL.+ -}++{- $projectionType+'Projection' /c/ /t/ is SQL value type projection to haskell type with context type /c/ correspond haskell type /t/.++'Flat' is not aggregated query context type,+'Aggregated' is aggregated query context type,+'OverWindow' is window function context type, and so on.++Module "Database.Relational.Query.Context" contains documentation of other context types.+ -}++{- $projectionPath+'!' operator is projected value selector using projection path type 'Pi' /r0/ /r1/.+'Pi' /r0/ /r1/ is projection path type selecting column type /r1/ from record type /r0/.+'<.>' operator makes composed projection path from two projection paths.+ -}+ {- $projectionOperators-Some operators are defined to caluculate projections.+Some operators are defined to caluculate projected values.++For example,+'.=.' operator is equal compare operation of projected value correspond to SQL =,+'.+.' operator is plus operation of projected value coresspond to SQL +, and so on.++Module "Database.Relational.Query.Projectable" contains documentation of other projection operators.  -}  {- $aggregateFunctions-Typed aggregate operators are defined.+Typed aggregate function operators are defined. Aggregated value types is distinguished with Flat value types.++For example,+'sum'' operator is aggregate function of projected flat (not aggregated) value+correspond to SQL SUM(...),+'rank' operator is window function of projected value coresspond to SQL RANK(), and so on.++Module "Database.Relational.Query.Projectable" contains documentation of+other aggregate function operators and window function operators.  -}  {- $setOperators Several operators are defined to manipulate relation set.- -} +'union' operator makes union relation set of two relation set correspond to SQL UNION.+'except' operator makes difference relation set of two relation set correspond to SQL EXCEPT.+'intersect' operator makes intersection relation set of two relation set correspond to SQL INTERSECT.+-}+ {- $maybeProjection-Operators of projection and aggregation are also provided Maybe type versions.+'Maybe' type flavor of operators against projection path, projection and aggregation are also provided.++For example,+'?!' operator is maybe flavor of '!',+'<?.>' operator is maybe flavor of '<.>'.+'?!?' opeartor and '<?.?>' operator 'join' two 'Maybe' phantom functors.++'?+?' operator is maybe flavor of '.+.',+'nagateMaybe' operator is maybe flavor of 'nagate',+'sumMaybe' operator is maybe flavor of 'sum''.++Module "Database.Relational.Query.Projectable" contains documentation of+other 'Maybe' flavor projection operators.  -}  {- $placeholder-Some operators are defined to realize type safe placeholder.- -}+Placeholder flavor of operators against query operation and set operation are also provided, to realize type safe placeholder. +'query'', 'left'', 'relation'' and 'union''+operator is placeholder flavor 'query', 'left', 'relation' and union. +Module "Database.Relational.Query.Relation" contains documentation of+other placeholder flavor operators.+-}++ {- $databaseOperations-Some actions are defined for database site effects.+Some actions are defined for database side effects.  -}  {- $generalizedStmt