Just use delete_group instead, since that gets rid of other related stuff in other tables
Nope, delete_group checks for existance first.  Just use similar logic