diff --git a/src/honeysql/format.clj b/src/honeysql/format.clj index c879fa7..6af1b78 100644 --- a/src/honeysql/format.clj +++ b/src/honeysql/format.clj @@ -175,6 +175,7 @@ :select 50 :insert-into 60 :update 70 + :delete 75 :delete-from 80 :columns 90 :set 100 @@ -507,7 +508,10 @@ (defmethod format-clause :delete-from [[_ table] _] (str "DELETE FROM " (to-sql table))) - + +(defmethod format-clause :delete [[_ table] _] + (str "DELETE " (to-sql table))) + (defn cte->sql [[cte-name query]] (str (to-sql cte-name) " AS " (to-sql query))) diff --git a/src/honeysql/helpers.clj b/src/honeysql/helpers.clj index a9825b3..15bf644 100644 --- a/src/honeysql/helpers.clj +++ b/src/honeysql/helpers.clj @@ -224,6 +224,13 @@ (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))) (defmethod build-clause :with [_ m ctes] (assoc m :with ctes))