PostgreeSQL: контроль уникальности вставки
Хороший вариант: возложить контроль уникальности вставляемых данных, на уровень БД. Если это по каким-то причинам не возможно, то можно попробовать такой вариант:
| 1 2 3 4 5 6 | insert into users_groups_filling (user_id,user_group)  select  :user_id,:user_group  where   NOT EXISTS ( 	 SELECT id from users_groups_filling where user_id=:user_id and user_group=:user_group  ) |