Added DELETE clause that takes a FROM clause
Makes T-SQL join deletes possible
This commit is contained in:
parent
88bc556578
commit
b8888174e5
2 changed files with 11 additions and 1 deletions
|
|
@ -156,7 +156,7 @@
|
|||
|
||||
(def clause-order
|
||||
"Determines the order that clauses will be placed within generated SQL"
|
||||
[:select :insert-into :update :delete-from :columns :set :from :join
|
||||
[:select :insert-into :update :delete :delete-from :columns :set :from :join
|
||||
:left-join :right-join :where :group-by :having :order-by :limit :offset
|
||||
:values :query-values])
|
||||
|
||||
|
|
@ -386,3 +386,6 @@
|
|||
|
||||
(defmethod format-clause :delete-from [[_ table] _]
|
||||
(str "DELETE FROM " (to-sql table)))
|
||||
|
||||
(defmethod format-clause :delete [[_ table] _]
|
||||
(str "DELETE " (to-sql table)))
|
||||
|
|
@ -209,3 +209,10 @@
|
|||
(defn delete-from
|
||||
([table] (delete-from nil table))
|
||||
([m table] (build-clause :delete-from m table)))
|
||||
|
||||
(defmethod build-clause :delete [_ m table]
|
||||
(assoc m :delete table))
|
||||
|
||||
(defn delete
|
||||
([table] (delete nil table))
|
||||
([m table] (build-clause :delete m table)))
|
||||
|
|
|
|||
Loading…
Reference in a new issue