Typeful, Modular, Relational, algebraic query engine

Version on this page:
LTS Haskell 18.0:
Stackage Nightly 2021-06-14:
Latest on Hackage:

See all snapshots relational-query appears in

BSD-3-Clause licensed by Kei Hibino
Maintained by
This version can be pinned in stack with:relational-query-,5915

This package contiains typeful relation structure and relational-algebraic query building DSL which can translate into SQL query. Supported query features are below: - Type safe query building - Restriction, Join, Aggregation - Modularized relations - Typed placeholders


  • Add version constraint for LTS-8.

  • Bugfix of lazy instances of ShowConstantTermsSQL.

  • Deprecate some exported interfaces which are internal definitions.

  • Update this changelog

  • simpl-tick-factor work-around to avoid bug of GHC

  • Export Register interface type from Query module.

  • Refactor around sub-query and its builder.
  • Compatibility with dlist-0.5.

  • Add configuration to quote SQL string of table names.

  • Add tested-with meta-data.

  • Update for GHC 8.

  • Fix constraint of build-depends.

  • Add TIMESTAMPTZ literal of PostgreSQL.

  • Add schemaNameMode configuration.

  • Update tests along with deprecations.

  • Drop unused pragma.

  • Drop unreferenced overloading.

  • Update documentation.

  • Fix build-depends.

  • Drop unsafe Expr type.
  • Drop redundant type synonyms around DELETE and UPDATE.
  • Add Register monad to add build-able INSERT statement
  • Configurable relation template names.

  • Deprecate redundant type synonyms.

  • Prepare to drop Expr type and deprecate around it.
  • Fix boolean projection operator types.

  • Update this changelog.

  • Use TH quotations for deriving class symbols.

  • Fix around correlated sub-queries.
  • Update unit-test cases.

  • Add Int8 type as SQL constant int value. (e.g. MySQL)

  • Make InsertQuery type as PreparedNoFetch instance.

  • Add a configuration flag to pring verbose compile-time messages.

  • Increase type safety of interfaces.
  • Simplify interfaces arond unique query.

  • Add MonadTrans instance of QueryJoin.
  • Update links about Opaleye.

  • Update documentation.

  • Add the arrow combinator module and its unit-test cases.

  • Update unit-test cases.
  • Add the fixity of over operator.
  • Avoid an `a future Prelude name’ warning.

  • Switch libraries to use from test-suites not to depend on Cabal library.

  • Add this ChangeLog file.