v tomto případě jsi IMHO zbytečně přenormalizoval. Kdybys měl jen jednu tabulku users-groups a typ určil příznakem, tak jsi celý problém mohl zredukovat velmi jednoduše tak, že hledáš-li usera i skupinu, selektuješ stále na stejný parametr.
edit: samozřejmě netuším, k čemu chceš tu databázi používat a co všechno má "umět". Někdy ale je výhodné si trochu "zaoptimalizovat" s designem.