하루 종일 MySQL의 쿼리를 분류하는 노력했습니다 :(어떤 도움이 좋을 것.MySQL 데이터베이스 도움이
내가 세 가지를 연관 것을 시도하고있다. 메뉴 항목, 메뉴 항목의 그룹과 . ID (고유 한)
내가 (독특한)
0 그룹 테이블 그룹 ID가 함께메뉴 아이템 테이블 : 권한 수준
그래서 나는 5 개 개의 테이블을 가지고
과 menuIdGroupId 테이블 의 groupId 내가 특권 테이블과 그룹 테이블이 정말에만 목록입니다
idPrivilege
idGroups (독특한)과 groupsPrivlstable 특권 테이블 privilegeid이
을 menuId와 그룹 및 특권. privilegegroup 테이블과 groupMenu 테이블은 모두 테이블을 조인하여 모든 것을 관련시킵니다.내가 쿼리 및 없음 작업을 위해 조합을 많이 시도했다 : groupsPrivls이
idGroups idPrivilege
7 0
7 1
1 1
1 2
1 4
13 5
9 2
12 1
1 5
1 6
7 2
7 4
7 5
7 6
하고 menuIDGroupId
SELECT *
FROM `menuIdGroupId`
JOIN `menuItems` ON menuItems.id = menuIdGroupId.menuId
JOIN `groupsPrivls` ON groupsPrivls.idGroups = menuIdGroupId.groupId
WHERE groupsPrivls.idPrivilege = '1'
LIMIT 0 , 30
경우
groupId menuId
1 30
7 29
1 31
1 29
1 33
7 33
4 33
1 32
7 30
7 31
id text
33 button 3
32 button 2
31 button 1
30 Church
29 About
결과
입니다groupId menuId id text idGroups idPrivilege
7 29 29 About Us 7 1
7 33 33 button 3 7 1
7 30 30 New to Church 7 1
7 31 31 button 1 7 1
1 30 30 New to Church 1 1
1 31 31 button 1 1 1
1 29 29 About Us 1 1
1 33 33 button 3 1 1
1 32 32 button 2 1 1
제가 알 수있는 것처럼 중복 된 항목이 생겨서 그 이유를 알 수 없습니다. 나는 그것을 8 개로 설정하지 않았다고 생각합니다. 어떤 도움이라도 좋을 것입니다.
감사
앨런
을PS 죄송 형식이 너무 지저분하다!
원하는 출력은 무엇입니까? –