首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

如何把一个表里的属性名字相同的数量加起来之后得到total number,然后传到另外一个表里

2012-02-19 
怎么把一个表里的属性名字相同的数量加起来之后得到total number,然后传到另外一个表里需求:将表格OrderLi

怎么把一个表里的属性名字相同的数量加起来之后得到total number,然后传到另外一个表里
需求:将表格OrderLine里相同的LPart的LQuantity相加之后,传到表格Part的Total属性里。
表格如下:
CREATE TABLE Part( /* Part description */
PNumberNUMBER(10)NOT NULL, /* Number*/
PNameVARCHAR(30)NOT NULL, /* Name */
PManufacturerVARCHAR(255)NOT NULL, /* Manufacturer */
PPriceNUMBER(7,2)NOT NULL, /* Price*/
PRatingVARCHAR(10) NULL, /* Rating*/
Total NUMBER(6) NULL, /*Total number*/ 
CONSTRAINT Part_pkey PRIMARY KEY( PNumber ),
CONSTRAINT Part_fkey1 FOREIGN KEY( PRating )
);
CREATE TABLE Orders( /* Order description*/
ONumberNUMBER(10)NOT NULL, /* Number*/
ODateDATENOT NULL, /* Date when issued*/
OCustomerVARCHAR(255)NOT NULL, /* Customer involved*/
CONSTRAINT Orders_pkey PRIMARY KEY( ONumber )
);
CREATE TABLE OrderLine( /* Ordered parts*/
LOrderNUMBER(10)NOT NULL, /* Order number*/
LLineNUMBER(3)NOT NULL, /* Line number*/
LPartNUMBER(10)NOT NULL, /* Part number*/
LQuantityNUMBER(6)NOT NULL, /* Quantity*/
CONSTRAINT OrderLine_pkey PRIMARY KEY( LOrder, LLine ),
CONSTRAINT OrderLine_fkey1 FOREIGN KEY( LPart )
REFERENCES Part( PNumber ),
CONSTRAINT OrderLine_fkey2 FOREIGN KEY( LOrder )
REFERENCES Orders( ONumber )
);


[解决办法]
上面的update语句写错了

SQL code
 update part aset total=(select sum(LQuantity )       from orderline       where lpart=a.pnumber       group by lpart) 

热点排行
Bad Request.