qbits.hayt.dsl.clause

add-column

(add-column identifier type)

Clause: takes a table identifier and a column type

allow-filtering

(allow-filtering value)(allow-filtering)

Clause: sets ALLOW FILTERING on select queries, defaults to true is used without a value

alter-column

(alter-column identifier type)

Clause: takes a table identifier and a column type

column-definitions

(column-definitions column-definitions)

Clause: Takes a map of columns definitions (keys are identifiers , values, types), to be used with create-table.

columns

(columns & columns)

Clause: takes columns identifiers ex: (columns :foo “bar” :baz)

counter

(counter value)(counter)

Clause: Sets COUNTER attribute on BATCH queries

custom

(custom x)(custom)

Clause: Sets CUSTOM status on create-index query

drop-column

(drop-column id)

Clause: Takes a column Identifier

if-exists

(if-exists b)(if-exists)

Clause: Apply only if the target exists

if-not-exists

(if-not-exists b)(if-not-exists)

DEPRECATED use (if-exists false) Clause: Apply only if the row does not exist

index-name

(index-name value)

Clause: Takes an index identifier

limit

(limit n)

Clause: Sets LIMIT, takes a numeric value

logged

(logged value)(logged)

Clause: Sets LOGGED/UNLOGGED attribute on BATCH queries

only-if

(only-if args)

Clause: takes a map or a vector of pairs (same as where) to compose the if clause of a update/delete query

only-if'

(only-if' & args)

Clause: takes a map or a vector of pairs (same as where) to compose the if clause of a update/delete query

order-by

(order-by & columns)

Clause: takes vectors of 2 elements, where the first is the column identifier and the second is the ordering as keyword. ex: (order-by [:asc :desc])

password

(password value)

Clause: To be used with alter-user and create-user, sets password

perm

(perm value)

Clause: Sets permission to be listed with list-perm

queries

(queries & queries)

Clause: takes hayt queries to be executed during a batch operation.

recursive

(recursive value)(recursive)

Clause: Sets recusivity on list-perm (LIST PERMISSION) queries

rename-column

(rename-column old-name new-name)

Clause: rename from old-name to new-name

resource

(resource value)

Clause: Sets resource to be modified/used with grant or list-perm

set-columns

(set-columns values)(set-columns x y & more)

Clause: Takes a map of columns to be updated

superuser

(superuser value)(superuser)

Clause: To be used with alter-user and create-user, sets superuser status

user

(user value)

Clause: Sets user to be modified/used with grant or list-perm

using

(using opts)(using x y & more)

Clause: Sets USING, takes keyword/value pairs for :timestamp and :ttl

values

(values values)(values x y & more)

Clause: Takes a map of columns to be inserted

where

(where args)

Clause: takes a map or a vector of pairs to compose the where clause of a select/update/delete query

where'

(where' & args)

Same as where but for people who prefer unrolled args

where1

(where1 args)(where1 x y & more)

backward compatible with hayt 1.0 and 2.0 betas

with

(with values)(with x y & more)

Clause: compiles to a CQL with clause (possibly nested maps)