库存表包含:
STOCK_ID
STOCK_QTY
组件表中包含:
COMPONENT_ID
COMPONENT_QTY
STOCK_ID(FK)
三明治表包含:
SANDWICH_ID
SANDWICH_PRICE
COMPONENT_ID(FK)
我有三个三明治,腊肉,香肠和熏肉和香肠。 STOCK_QTY包含整个商店的库存数量。 COMPONENT_ID包含每个三明治所用组件的数量。
现在,我遇到的问题是,我需要每个三明治多个组件(使一个完整的三明治,即面包,黄油,香肠),这反过来将从整体库存量(面包200,黄油200,香肠300)除以组分数量栏中指定的值(面包2,黄油1香肠2)。我无法弄清楚如何设计/实现这个。为什么/我该如何将多个COMPONENT_ID分配给SANDWICH_ID,或者我是否完全错误。我一直在思考这个问题两天,并没有进一步的了解。
TABLES
MSD_COMPONENT:
COMPONENT_ID VARCHAR2(8) No - 1
COMPONENT_TYPE VARCHAR2(8) Yes - -
COMPONENT_QTY NUMBER Yes - -
COMPONENT_DECSR VARCHAR2(25) Yes - -
STOCK_ID VARCHAR2(8) Yes - -
COMPONENT_ID COMPONENT_TYPE COMPONENT_QTY COMPONENT_DECSR STOCK_ID
CID0001 BREAD 2 WHITE BREAD SLICES SID0001
CID0002 BREAD 2 BROWN BREAD SLICES SID0002
CID0003 BREAD 1 WHITE BREAD BAP SID0003
CID0004 BREAD 1 BROWN BREAD BAP SID0004
CID0005 BREAD 2 WHOLEMEAL SLICES SID0005
CID0015 MEAT 200 BACON RASHERS SID0006
CID0006 BREAD 1 WHOLEMEAL BAPS SID0007
CID0007 VEG 100 TOMATOES SID0008
CID0008 VEG 15 ONIONS SID0009
CID0009 VEG 40 PEPPERS SID0010
CID0010 VEG 25 CARROTS SID0011
CID0011 MEAT 50 BEEF SID0012
CID0012 MEAT 100 CHICKEN BREAST SID0013
CID0013 MEAT 50 HAM SID0014
CID0014 MEAT 100 PORK SAUSAGE SID0015
MSD_SANDWICH:
SANDWICH_ID VARCHAR2(8) No - 1
SANDWHICH_TYPE VARCHAR2(8) Yes - -
SANDWICH_DESCRIP VARCHAR2(20) Yes - -
SANDWICH_PRICE VARCHAR2(8) Yes - -
COMPONENT_ID VARCHAR2(8) Yes - -
MSD_STOCK:
STOCK_ID VARCHAR2(8) No - 1
STOCK_TYPE VARCHAR2(15) Yes - -
SHOP_ID VARCHAR2(6) Yes - -
STOCK_QTY NUMBER No - -
EDIT:格式化
虽然这听起来很美味,你能提供包含数据这些表的一些论证,要对它们进行操作什么,所以使问题更加清楚了吗? – Passerby 2013-05-07 09:21:00
对不起!编辑以包含表格。正如你所看到的,我只能在三明治表中有一个组件ID,但三明治将包含多个组件。我很困惑! – oldmanpete 2013-05-07 09:43:51