| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Opaleye.Order
Description
Ordering, LIMIT and OFFSET
- orderBy :: Order a -> Query a -> Query a
- data Order a
- asc :: PGOrd b => (a -> Column b) -> Order a
- desc :: PGOrd b => (a -> Column b) -> Order a
- ascNullsFirst :: PGOrd b => (a -> Column b) -> Order a
- descNullsLast :: PGOrd b => (a -> Column b) -> Order a
- limit :: Int -> Query a -> Query a
- offset :: Int -> Query a -> Query a
- class PGOrd a
Order by
orderBy :: Order a -> Query a -> Query a Source #
Order the rows of a Query according to the Order.
import Data.Monoid (<>) -- Order by the first column ascending. When first columns are equal -- order by second column descending. example ::Query(ColumnPGInt4,ColumnPGText) ->Query(ColumnPGInt4,ColumnPGText) example =orderBy(ascfst <>descsnd)
An Order a represents a sort order and direction for the elements
of the type a. Multiple Orders can be composed with
mappend or (<>) from Data.Monoid. If two rows are
equal according to the first Order in the mappend, the second is
used, and so on.
Order direction
asc :: PGOrd b => (a -> Column b) -> Order a Source #
Specify an ascending ordering by the given expression. (Any NULLs appear last)
desc :: PGOrd b => (a -> Column b) -> Order a Source #
Specify an descending ordering by the given expression. (Any NULLs appear first)
ascNullsFirst :: PGOrd b => (a -> Column b) -> Order a Source #
Specify an ascending ordering by the given expression. (Any NULLs appear first)
descNullsLast :: PGOrd b => (a -> Column b) -> Order a Source #
Specify an descending ordering by the given expression. (Any NULLs appear last)
Limit and offset
limit :: Int -> Query a -> Query a Source #
Limit the results of the given query to the given maximum number of items.
offset :: Int -> Query a -> Query a Source #
Offset the results of the given query by the given amount, skipping that many result rows.
Other
Typeclass for Postgres types which support ordering operations.
Instances