2012-09-21 2 views
0

저는 다음과 같이 디자인했습니다. 그러나 그것을 디자인하는 더 간단한 방법을 찾고 있습니다. (현재 사용자가 관심있는 하위 범주의 목록을 검색 할 때 스포츠의 각 유형에 대해 다른 쿼리를 사용해야합니다) :두 개의 서로 다른 테이블을 디자인하십시오

사용자 테이블에는 각 사용자가 스포츠 카테고리 수에 관심이있는 사용자 정보가 있으며, 각 카테고리에는 다른 하위 카테고리가 있으며 사용자는 카테고리 (모든 하위 카테고리) 또는 특정 카테고리의 하위 카테고리 수만 있습니다.

User  UserID           12 

Sport  CategoryID Category       1 Aquatic, 2 Running 

Aquatic SubCategoryID SubCategory,CategoryID   1 Swimming 1, 2 Surfing 2 

Running SubCateogryID SubCategory,CategoryID   1 200m 2,  2 300m 2 

LikeSport UserID CateogryID SubCategoryID    12 1 1,  12 2 nill 

그것은 ID 12 사용자가 수중 스포츠 그러나 다만 수영을 좋아하고 실행 스포츠의 모든 유형을 좋아 보여줍니다.

답변

0
Users:       UserID 
Categories:     CategoryID, CategoryName 
Subcategories:     SubcategoryID, SubcategoryName 
CategoriesSubcategories:  CategorySubcategoryID, CategoryID, SubcategoryID 
LikeSports:     UserID, CategorySubcategoryID 
+0

i thoug 각 카테고리는이 문맥에서 스포츠입니다. 따라서'categories'와'sports' 테이블은 같을 것입니다 – arunmoezhi

+0

@arunmoezhi 네, 그렇게 보입니다. 그러나 그 이름은 오해의 소지가 있습니다. 아마도 영업 이익이 명확해질 수 있을까요? – user1327961

+1

@ user1327861 답장을 보내 주셔서 감사합니다. Acquatic 및 Running은 Sport 카테고리이지만 각자 고유 한 하위 카테고리가 있습니다. 더 나은 설명을 위해 Sport 테이블의 이름을 Category 테이블로 변경해야한다고 가정합니다. (Acquatic, Football, Running과 같은 여러 스포츠 카테고리가 있습니다. 각각 자신의 하위 카테고리 인 Swimming, Waterploo - 실내, 실외 - 100m, 200m 사용자는 Acquatic 또는 하위 카테고리 수와 같은 카테고리에 관심이있을 수 있습니다. 축구에서 실내 및 100m 달리기) –

1

사용자 테이블 : userId를 사용자 이름

카테고리 테이블 : 카테고리 ID, categoryName이

하위 테이블 : subCategoryId, subCategoryName, 카테고리 ID (FK)

표 등

: userId를 (FK) , 카테고리 아이디 (FK), 하위 카테고리 아이디 (FK)

관련 문제