Commit graph

460 commits

Author SHA1 Message Date
Mike Blume
17145ea549 Merge remote-tracking branch 'justindell/master' into HEAD 2015-03-03 20:34:16 -08:00
Justin Dell
7fb92e0d93 fix merge-full-join 2015-03-03 22:25:50 -06:00
Michael Blume
12f73bfa5a Merge pull request #40 from senior/add-cast-support
Added support for casts of the form CAST(foo AS type)
2015-03-03 20:18:21 -08:00
Michael Blume
a96b14267e Merge pull request #38 from MichaelBlume/extend-to-object
extend ToSql to cover Object
2015-03-03 13:42:50 -08:00
Mike Blume
e06ddbdeb0 extend ToSql to cover Object
This commit avoids extraneous calls to satisfies?. Satisfies? is very
slow compared to protocol method dispatch, because method dispatch is
cached and satisfies? is not. Instead of using satisfies? to check for
cases where we need to fall back to a default behavior, we extend ToSql
to java.lang.Object, providing a default behavior directly.

This commit boosts honeysql's speed substantially. In my benchmarks,
80-90% of the time spent calling sql/format was spent in satisfies?.
2015-02-25 16:21:22 -08:00
Mike Blume
c736565bd5 avoid name collision with clojure.core/update
present in 1.7, currently in alpha
2015-02-25 16:15:53 -08:00
Ryan Senior
dd9647ee3e Added support for casts of the form CAST(foo AS type) 2015-02-20 10:05:09 -06:00
Isaac Cambron
25ba952a3e support postgres-native parameters 2015-01-06 19:58:56 -05:00
Justin Dell
f8a5886124 Add full join 2014-11-05 15:04:21 -06:00
Gary Fredericks
edd268ae7d Maintain the arglist metadata for helpers
This should hopefully make documentation via clojure.repl/doc and
others a bit more readable.
2014-05-01 17:26:33 +00:00
Justin Kramer
c8fbc16ec3 option for format to return names of params (with more dynamic vars - boo) 2013-12-13 12:32:08 -05:00
Justin Kramer
5aa351ab48 Merge pull request #9 from doffltmiw/master
add support for insert, update and delete queries
2013-12-13 08:23:00 -08:00
alice
e7fefe86a6 add columns, merge-columns and query-values clauses 2013-12-12 11:35:38 +09:00
Chris Perkins
a4e9f0ff46 Oracle support.
Omit AS in JOIN, FROM, etc. because Oracle does not support it.
2013-09-06 16:29:41 -06:00
alice
806b9bafd6 fix values clause to take multiple sets of values 2013-09-07 01:19:13 +09:00
alice
6f2ef8f6c3 add support for insert, update and delete queries 2013-09-06 23:18:05 +09:00
Justin Kramer
03fe1650ee improve identifier quoting 2013-08-07 21:56:31 -04:00
Justin Kramer
9d46b48366 special case identifier quoting for * 2013-08-07 18:22:44 -04:00
Justin Kramer
cff7abad1f accept explicit parameters in quote-identifiers 2013-08-07 10:30:15 -04:00
Justin Kramer
7d4cc64ecb :distinct-on helper fn; fixes #1 2013-08-06 16:29:26 -04:00
Justin Kramer
23659e94bc mention that :ansi quoting is for postgres 2013-08-06 16:17:05 -04:00
Justin Kramer
74669d62b5 quote aliases better 2013-08-06 15:23:37 -04:00
Justin Kramer
b3da410e38 identifier quoting 2013-08-06 15:08:09 -04:00
Justin Kramer
4590b93df5 keyword syntax for bindable param 2013-08-06 14:27:56 -04:00
Justin Kramer
96ddbc18f4 keyword syntax for sql calls 2013-08-06 14:06:00 -04:00
David Powell
90f3088c24 Don't upper case function calls
To allow for case-sensitive function names
2013-04-12 19:11:33 +02:00
Justin Kramer
28ca0add97 count-distinct fn handler 2012-12-03 12:39:06 -05:00
Justin Kramer
76d6ccbcdb :left-join & :right-join clauses; simplifies :join syntax 2012-10-19 12:41:26 -04:00
Justin Kramer
bea39e3527 reset *fn-context?* for subqueries 2012-10-18 22:00:07 -04:00
Justin Kramer
7771a386ea prevent nil modifiers 2012-08-26 12:14:13 -04:00
Justin Kramer
33ba71ddaa regex alias 2012-08-26 12:14:07 -04:00
Justin Kramer
51d0d220a0 param type, input-parameters arg for format, more docs 2012-08-24 22:40:50 -04:00
Justin Kramer
cb99df7c36 qualify, docs 2012-08-24 21:53:54 -04:00
Justin Kramer
e45a58f267 allow custom clauses 2012-08-24 18:19:17 -04:00
Justin Kramer
faa495c362 don't allow nil in :offset or :limit 2012-08-24 17:35:49 -04:00
Justin Kramer
cfadae53d1 always pipe base map through build, to ensure consistency 2012-08-24 17:08:22 -04:00
Justin Kramer
18d5fa19e8 make clause-building extensible, move helper fns to honeysql.helpers 2012-08-24 16:50:56 -04:00
Justin Kramer
3b97fd4f06 allow string aliases 2012-08-22 11:23:00 -04:00
Justin Kramer
73da451ab3 not-like sugar 2012-08-18 15:41:51 -04:00
Justin Kramer
df77e861a3 "match" fn-handler 2012-08-17 10:35:34 -04:00
Justin Kramer
70235d5140 delegate to-sql responsibility to fn-handler; expand [:< 1 2 3] etc 2012-08-16 16:24:49 -04:00
Justin Kramer
c9e3503263 multimethod for extensible sql fn handlers 2012-08-16 15:55:50 -04:00
Justin Kramer
6438c04486 better null handling; normalize "not equal" variations as "<>" 2012-08-16 15:41:58 -04:00
Justin Kramer
e7265b60bb turn dashes into underscores when formatting 2012-08-16 14:50:08 -04:00
Justin Kramer
212ebd31b4 ignore unrecognized clauses 2012-08-07 17:58:51 -04:00
Justin Kramer
a9fcd837ca un-select 2012-08-07 17:58:32 -04:00
Justin Kramer
2145cded0e format-predicate 2012-07-13 18:45:25 -04:00
Justin Kramer
cef05d4ef5 fix params 2012-07-13 17:20:48 -04:00
Justin Kramer
f9b262cefb move types to separate ns 2012-07-13 12:43:18 -04:00
Justin Kramer
039ab16447 make SqlCall and SqlRaw readable and accept metadata 2012-07-13 12:35:58 -04:00
Justin Kramer
d167bfbc12 modifiers api 2012-07-13 11:46:37 -04:00
Justin Kramer
265fa6c81f fix joins 2012-07-13 11:46:30 -04:00
Justin Kramer
b9f1e17c91 revise api 2012-07-13 10:53:19 -04:00
Justin Kramer
07559aae74 include sql-fn and sql-raw in core api 2012-07-13 09:57:36 -04:00
Justin Kramer
06443cd1dd api 2012-07-13 08:50:20 -04:00
Justin Kramer
40d25c8726 don't paren-wrap top-level query 2012-07-12 23:14:48 -04:00
Justin Kramer
92aa49deeb better spacing for modifiers 2012-07-12 22:56:52 -04:00
Justin Kramer
5c2e25abd7 fix joins; modifiers 2012-07-12 22:39:01 -04:00
Justin Kramer
b61435e1e4 not in 2012-07-12 22:06:05 -04:00
Justin Kramer
22866a6edc initial commit - basic working data structure -> sql 2012-07-12 21:50:13 -04:00