日期:2014-05-17 浏览次数:20590 次
--USE TEST
--DROP TABLE A ;
--DROP TABLE B ;
CREATE TABLE A(ID VARCHAR(5),SKU VARCHAR(5),QTY NUMERIC);
CREATE TABLE B(ID VARCHAR(5),SKU VARCHAR(5),QTY NUMERIC);
INSERT INTO A
SELECT '1','abcde','1'
UNION ALL
SELECT '1','abcde','2'
UNION ALL
SELECT '1','abcde','3';
INSERT INTO B
SELECT '1','abcde','6';
SELECT * FROM A;
SELECT * FROM B;
--说明,需要根据B表QTY更新A表QTY,且更新后的SUM(A.QTY)=B.QTY
--条件是根据A.ID=B.ID ADN A.SKU=B.SKU
--举例
A表:
ID SKU QTY
1 ABCDE 1
1 ABCDE 2
1 ABCDE 3
B表:
1 ABCDE 5
结果:
A表:
ID SKU QTY
1 ABCDE 0
1 ABCDE 2
1 ABCDE 3
或者
A表:
ID SKU QTY
1 ABCDE 1
1 ABCDE 2
1 ABCDE 2
或者
A表:
ID SKU QTY
1 ABCDE 1
1 ABCDE 1
1 ABCDE 3
总之是SUM(A.QTY)=B.QTY,但是A中记录条数不能少!!!!
--DROP?TABLE?A?;
--DROP?TABLE?B?;
--CREATE?TABLE?A(ID?VARCHAR(5),SKU?VARCHAR(5),QTY?int);
--CREATE?TABLE?B(ID?VARCHAR(5),SKU?VARCHAR(5),QTY?int);
?
--INSERT?INTO?A
--SELECT?'1','abcde','1'
--UNION?ALL
--SELECT?'1','abcde','2'
--UNION?ALL
--SELECT?'1','abcde','3';
?
--INSERT?INTO?B