Potrzebuję przechować w bazie informacje dla kogo jakaś treść jest przeznaczona i oddzielnie widoczna i oddzielnie zaznaczyć czy jest to dla konkretnych użytkowników, czy dla grup.
Pomyślałem o 4 tabelach
Przeznaczenie-Grupa-Tresc
Przeznaczenie-User-Tresc
Widocznosc-Grupa-Tresc
Widocznosc-User-Tresc
W każdej 2 kolumny - idFor (id grupy lub użytkownika) i idTresc (identyfikator tresci, które są przechowywane w innej tabeli).
Ale może lepiej upchnąć to wszystko w jedną tabelę z 4 kolumnami?
Pierwsza kolumna określa czy jest to przeznaczenie czy widoczność
Druga kolumna czy identyfikator dotyczy grupy czy użytkownika
pozostałe 2 kolumny to idFor i idTresc
Czy ma to znaczenie z punktu widzenia optymalizacji? Jak to powinno być zrobione? Są jakieś zasady projektowania baz SQL które by tego dotyczyły. Baza będzie postawiona na MySQLu