합리적으로 간단한 구매 주문 추적 데이터베이스를 개발하려고합니다. 이 작업을 가장 효율적으로 수행하는 방법을 시각화하는 데 어려움이 있습니다. 나는 특정 순서를 만들기 위해 필요한 모든 개별 구성 요소의 목록을 생성 할 필요가반복적 인 SQL 쿼리
Purchase Order table:
PO Number, Customer Product Number, Quantity
6874 , ABC-0001 4
6873 , XYX-2222 1
Customer Product Table:
Customer Product Number, Finished Goods Number
ABC-0001 , 501-123
ABC-0001 , 501-124
ABC-0001 , 501-125
Finished Goods Table:
Finished Goods Number, Component Number, QTY Per FG
501-123 , COMP-0001 , 1
501-123 , COMP-0004 , 16
501-123 , COMP-0009 , 12
501-124 , COMP-0005 , 5
501-124 , COMP-0003 , 9
501-124 , COMP-0001 , 10
501-125 , COMP-0006 , 3
501-125 , COMP-0004 , 2
501-125 , COMP-0003 , 1
Component Table, Suppplier ID, (etc. etc. etc.)
COMP-0001
COMP-0002
COMP-0003
COMP-0004
COMP-0005
COMP-0006
COMP-0007
COMP-0008
COMP-0009
COMP-0010
: 순간
나는 4 개 테이블이있다. 그래서 목록은 다음과 같이 보일 것입니다 :COMP-0001 - 44 (order quantity = 4 * (1 in 501-123 + 10 in 501-124)
등 등
이는 SQL에서 수행, 또는 내가 단계 단계의 중간 테이블을 커서를 사용하여 생성에 그것을해야 할 수 있습니다 ? 아주 간단한 것처럼 보이지만 어떻게해야하는지 한 가지 예를 찾을 수 없었습니다.
표는 상당히 큽니다.
Order table is around 6000 orders (some of which are already complete, typically 300 or so currently open)
Customer Product Table around 2000 items
Finished Goods around 2000
The component table contains over 20,000 separate components
결과를 얻는 데 올바른 방법이 있습니까?
도움을 주신 모든 도움.
20.000 행이 멀리 "합리적"큰되는 것입니다. –
@duinui, SQL은 20,000 행으로 하품합니다. 전혀 크지 않음 – logixologist
Btw : 어떤 DBMS를 사용합니까? 포스트그레스? 신탁? 이는 제시된 해결책에 영향을 미칠 수 있습니다. –