구성 요소를 구성 요소 테이블에 저장하는 데이터베이스가 있습니다. 구성 요소 가격에 대한 두 번째 테이블이 있습니다. 이 테이블에는 구성 요소 ID에 매핑되는 필드가 있습니다. 내 가격 테이블은 다양한 가격 (10, 100, 1000, 10K, 100K, 1M)에 대한 정보를 저장해야합니다. 문제는 앞으로 25K 또는 50K와 같은 다른 유형의 가격을 저장할 가능성이 있음을 의미합니다.가격 데이터를위한 데이터베이스 설계
지금 현재, 내 가격 테이블은 다음과 같다 : 유형이 현재 1-6에서 값을 취할 수
id component_id type price
. 이것은 내가 아주 쉽게 미래에 새로운 가격 유형을 추가 할 수있게 해주기 때문에 좋다.
다른 옵션은 다음과 같습니다 가격 테이블 :
id component_id price_10 price_100 price_1000 price_10K price_100K price_1M
그러나이 경우, 나는 새로운 분야에 새로운 가격 유형이 추가 될 때마다 추가해야
.나는 여기 사람들이 첫 번째 방법에 동의하기를 바랍니다.
첫 번째 방법을 사용하면 데이터베이스에있는 모든 구성 요소를 6 가지 가격으로 표시하는 페이지를 표시하는 데 문제가 있습니다 (이 경우 0을 표시해야 함). 분명히 이것은 두 번째 방법을 사용하면 간단 할 것입니다.
이
내가 지금까지 가지고있는 쿼리입니다 :SELECT * FROM `component` LEFT JOIN `component_cost` ON `cmpcst_component` = `cmp_id`
편집 : 내가 구성 요소 가격 테이블에서 일부 샘플 데이터를 표시 것이라고 생각 : 가격은 양의 X를 X의 단가입니다 10-1 백만 범위. 그래서 난 내 구성 요소 가격 테이블에 이런 일이있을 수 있습니다 :
id component_id type price
1 1 1 0.50
2 1 2 0.45
3 1 3 0.40
4 1 4 0.35
5 1 5 0.32
6 1 6 0.30
유형과 가격 간의 관계는 무엇입니까? 1 가지 유형에 대해 2 가지 가격이있을 수 있습니까? 즉,이 숫자는 10, 100, 1000, 10K, 100K, 1M, 25K, 50K입니다. 그들은 $ 또는 다른 것입니까? – Kash
방금 샘플 데이터를 내 게시물의 맨 아래에 추가했습니다. 가격은 단가입니다. 따라서 구성 요소는 10 단위를 주문할 때 $ 0.50, 1000 단위를 주문할 때는 $ 0.40을 소비합니다. – Justin
예상되는 출력뿐만 아니라 테이블 구조와 샘플 데이터를 제공하면 도움이 될 것입니다. 제공하는 내용에 따라 SQL 질문에 단순히 대답하는 것보다 나은 솔루션을 제공 할 수 있습니다. 예를 들어 조회 테이블을 사용하는 것이 더 나을 것이므로 나중에 더 쉽게 유지 관리 할 수있는 것으로 나타납니다. 대신에 비정규 화 된 테이블이 필요한 경우 :) – Nonym