Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Select que no sé por dónde agarrarla

Estas en el tema de Select que no sé por dónde agarrarla en el foro de Mysql en Foros del Web. Buenas, Hacía tiempo que no tocaba en serio SQL y ahora me he topado con un sistema algo complejo en el que no acabo de ...
  #1 (permalink)  
Antiguo 11/11/2008, 16:15
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 4 meses
Puntos: 17
Select que no sé por dónde agarrarla

Buenas,

Hacía tiempo que no tocaba en serio SQL y ahora me he topado con un sistema algo complejo en el que no acabo de dar con la sentencia correcta.

Supongamos las siguientes tablas:

Users: UserID, Name, etc...
Groups: GroupID, Name, etc...
Relacion Users_Groups: UserID, GroupID

Por otra parte tenemos un sistema de Permisos:

Permissions: PerID, etc...
Roles: RolID, etc....

Relación Roles_Permisos: PerID, RolID

Finalmente existe una tabla Projects: ProjectID, etc...
Y una asoaciación entre un Proyecto, un grupo de usuarios y un rol.

Es decir, tenemos una serie de usuarios, que pueden pertenecer a uno o varios grupos.
Por otra parte tenemos un listado de permisos, que pertenecen a uno o varios roles.
Por último tenemos proyectos, que tienen grupos y roles asociados.


La pregunta es, ¿Cómo hago una consulta que, dado un proyecto y un usuario, me saque todos los ID de permisos relacionados con ese proyecto en concreto y ese usuario? Basicamente tendría que sacar primero todos los grupos a los que pertenece ese usuario y que, a su vez, el grupo pertenezca al proyecto dado. Y de esos grupos, sacar los roles de cada grupo, y de los roles sus permisos asociados.

Es un poco (bastante) lioso y no sé muy bien cómo abordarlo...

con un SELECT "normal" consigo sacar los permisos de un determinado grupo, pero si el usuario pertenece a varios grupos dentro del mismo proyecto no lo hace correctamente.

Saludos.

Edito: Siento que el título del tema no sea muy explicativo, pero no sabía qué poner!
  #2 (permalink)  
Antiguo 12/11/2008, 08:53
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Select que no sé por dónde agarrarla

keysher,

se te entiende perfectamente, pero no obstante si te es posible y no lo ves mal, exporta la estructura de tu base con algunos datos como archivo sql y pega el texto en el post. Seguro que podremos hacer alguna prueba para ver exactamente cuál es el problema. Sólo necesitaremos las tablas implicadas y algunos datos que puedan estar saliendo mal. Pon, si quieres, también la consulta utilizada por ti.
  #3 (permalink)  
Antiguo 12/11/2008, 12:10
 
Fecha de Ingreso: noviembre-2002
Mensajes: 1.341
Antigüedad: 21 años, 4 meses
Puntos: 17
Respuesta: Select que no sé por dónde agarrarla

Buenas,

Gracias por responder. Dándole unas vueltas creo que di con la sentencia correcta (o al menos de momento hace lo que quiero). Se solucionaba con una Select normalita.

Gracias de todos modos!!!
Un saludo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:41.