Common query building and formatting utilities.
Common query building and formatting utilities.
(build-ordering options default-field)Build ORDER BY clause from sort options.
Args: options: Map with :sort-by and :sort-direction keys default-field: Default field to sort by (keyword)
Returns: Vector of [field direction] pairs
Example: (build-ordering {:sort-by :created-at :sort-direction :desc} :id)
Build ORDER BY clause from sort options.
Args:
options: Map with :sort-by and :sort-direction keys
default-field: Default field to sort by (keyword)
Returns:
Vector of [field direction] pairs
Example:
(build-ordering {:sort-by :created-at :sort-direction :desc} :id)(build-pagination options)Build LIMIT/OFFSET clause from pagination options with safe defaults.
Args: options: Map with :limit and :offset keys
Returns: Map with sanitized :limit and :offset values
Example: (build-pagination {:limit 50 :offset 100})
Build LIMIT/OFFSET clause from pagination options with safe defaults.
Args:
options: Map with :limit and :offset keys
Returns:
Map with sanitized :limit and :offset values
Example:
(build-pagination {:limit 50 :offset 100})(build-where-clause adapter filters)Build dynamic WHERE clause from filter map using adapter-specific logic.
Args: adapter: Database adapter filters: Map of field -> value filters
Returns: HoneySQL WHERE clause or nil
Example: (build-where-clause adapter {:name "John" :active true :role [:admin :user]})
Build dynamic WHERE clause from filter map using adapter-specific logic.
Args:
adapter: Database adapter
filters: Map of field -> value filters
Returns:
HoneySQL WHERE clause or nil
Example:
(build-where-clause adapter {:name "John" :active true :role [:admin :user]})(format-sql adapter query-map)Format HoneySQL query map using adapter's dialect. Converts kebab-case identifiers to snake_case at database boundary.
Args: adapter: Database adapter query-map: HoneySQL query map (with kebab-case identifiers)
Returns: Vector of [sql & params]
Example: (format-sql adapter {:select [:*] :from [:users]})
Format HoneySQL query map using adapter's dialect.
Converts kebab-case identifiers to snake_case at database boundary.
Args:
adapter: Database adapter
query-map: HoneySQL query map (with kebab-case identifiers)
Returns:
Vector of [sql & params]
Example:
(format-sql adapter {:select [:*] :from [:users]})(format-sql* adapter query-map opts)Format HoneySQL query map with custom options. Converts kebab-case identifiers to snake_case at database boundary.
Args: adapter: Database adapter query-map: HoneySQL query map (with kebab-case identifiers) opts: Additional formatting options
Returns: Vector of [sql & params]
Format HoneySQL query map with custom options. Converts kebab-case identifiers to snake_case at database boundary. Args: adapter: Database adapter query-map: HoneySQL query map (with kebab-case identifiers) opts: Additional formatting options Returns: Vector of [sql & params]
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |