ClojureQL is superior SQL integration for Clojure
Latest commit 91b5211 Jul 12, 2013 @LauJensen Merge pull request #140 from delver/issue-139
Renaming with aliases generates invalid SQL fragment, resolves Issue 139
Failed to load latest commit information.
src/clojureql Fix indents Jul 9, 2013
test Test to expose issue #139 Jul 9, 2013
.travis.yml no with profile in lein1 Jul 9, 2013 Release 1.0.4 Sep 7, 2012
LICENSE Project creation. Oct 31, 2010 Update Feb 28, 2013
project.clj Release 1.0.4 Sep 7, 2012


ClojureQL is an abstraction layer sitting on top of standard low-level JDBC SQL integration. It lets you interact with a database through a series of objects which work as Clojure data types.

ClojureQL is modeled around the primitives defined in Relational Algebra.

For the user, this means that all queries compose and are never executed unless dereferenced or called with a function that has the ! suffix.

As a help for debugging, wrap your statements in (binding [*debug* true]) to see the compiled SQL statement printed to stdout.


Add the following to your project.clj or pom.xml:

Cake/Lein artifact:

[clojureql "1.0.4"]



Then execute

cake deps

And import the library into your namespace

(:use clojureql.core)


Please visit for updated documentation.


ClojureQL is primarily developed by Lau Jensen of Best In Class.

Large and significant contributions to both the design and codebase have been rendered by Justin Balthrop aka. ninjudd author of the powerful build tool Cake.

In addition, the following people have made important contributions to ClojureQL:

  • Roman Scherer (r0man)
  • Christian Kebekus (ck)
  • Herwig Hochleitner (bendlas)


Eclipse Public License - v 1.0, see LICENSE.