DB 디자인 및 성능에 대한 질문이 있습니다.SQL DB 디자인을위한 최상의 성능?
다음과 같은 시나리오를 상상해 : 나는 Product
테이블이
을, 제품의 각 레코드는 다른 색상, 다른 무게와 다른 유형이있을 수 있습니다. 내가 3 개 테이블을 디자인 할 수
,
ProductID
및Color
열이있는Productcolor
테이블,ProductID
와ProductSize
에 대한 다음 하나, 체중 열 및ProductType
테이블 : 내 데이터베이스를 설계 할 때 두 가지 방법이 있습니다ProductID
및Type
. 그리고 다른 색상, 와이트 및 유형으로 한 제품을 반복하십시오. join을 사용하여 전체 속성을 가질 수 있습니다.Product
테이블에 색상, 무게, 유형 열을 가질 수 있으며 ","와 같은 구분 기호로 다른 값을 구분할 수 있습니다.
나는이 같은 몇 가지 테이블을 가지고 있는데, 그런 시나리오에 대한 더 나은 해결책이 있는지 알고 싶습니까? 아니라면 하나는 SQL과 심지어 내 asp.net 프로젝트에서 더 나은 성능을 가지고?
# 1은 거의 올바른 데이터베이스 정규화가 될 것입니다. # 2 접근법은 응용 프로그램의 수명이 다할 때 슬픔과 걱정과 생산성 저하를 초래하는 추한 해킹입니다. –
많은 사람들이 말했듯이 .dot separated field, 고전적인 나쁜 아이디어는 SQL 쿼리에 하나 이상의 속성이있는 제품을 찾지 않으려는 경우가 아니면 절대 사용하지 않는 것이 좋습니다. 그것이 사실이라면, 어쨌든 NoSQ1 변종을 선택하는 것이 낫습니다. –