diff --git a/src/honeysql/format.clj b/src/honeysql/format.clj index b42b020..bd64848 100644 --- a/src/honeysql/format.clj +++ b/src/honeysql/format.clj @@ -174,6 +174,7 @@ :select 50 :insert-into 60 :update 70 + :delete 75 :delete-from 80 :columns 90 :set 100 @@ -455,7 +456,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 e94eae6..9b05d7e 100644 --- a/src/honeysql/helpers.clj +++ b/src/honeysql/helpers.clj @@ -219,6 +219,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))