Hay un foro que trata sobre "Base de datos" donde te podrían orientar sobre las consultas SQL a tu BD o incluso algo sobre el modelo de datos para tu BD a seguir .. También tienes el foro de "Ingenería del Software ..." para tratar temas sobre como desarrollar ese modelo de datos más adecuado ..
De todas formas . .en este caso "PHP" estaría lo último del proceso cuando tengas todo eso claro. Procedo a mover tu mensaje al foro de "Base de datos" para que te orienten sobre el mejor modelo de datos y mejor "normalización" para tu caso concreto.
Un saludo,
PD: si quieres ir viendo algo del tema:
www.mysql-hispano.com (fijate en los tutoriales sobre normalización)