線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:792
推到 Plurk!
推到 Facebook!

UPDATE 問題

尚未結案
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-03-24 19:26:33 IP:203.69.xxx.xxx 未訂閱
A TABLE 與 B TABLE 有如下資料 A TABLE資料如下 CUSTMER=0001,MNY=10,000 CUSTMER=0002,MNY=20,000 B TABLE 資料如下 CUSTMER=0001, DATE=2004/3/1,MNY=1,000 CUSTMER=0001,DATE=2004/3/2, MNY=3,000 CUSTMER=0002, DATE=2004/3/1,MNY=1,000 CUSTMER=0003,DATE=2004/3/2, MNY=2,000 如何將 A TABLE的值改成 CUSTMER=0001,MNY=6,000(即10,000-1,000-3,000) CUSTMER=0002,MNY=17,000(即20,000-1,000-2,000) 不曉如何方式可以直接UPDATE 我用以下方式時SUM(B.DRMNY)會是7,000 如何使001是-4000,002是-3,000 UPDATE A SET MNY=MNY-SUM(B.MNY) FROM A,B WHERE A.CUSTMER=B.CUSTMER
yachanga
資深會員


發表:24
回覆:335
積分:296
註冊:2003-09-27

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-03-24 19:59:53 IP:210.243.xxx.xxx 未訂閱
My Idea is as bellow, hope it will be helpful~~    UPDATE A   SET MNY= Select C.mny from (SELECT A.CUSTOMER,A.MNY-B.MNY MNY FROM A, (select CUSTOMER,SUN(MNY) MNY from B GROUP BY CUSTOMER ) B WHERE A.CUSTOMER=B.CUSTOMER ) C WHere C.MNY=A.MNY ~悠遊法國號~
Miles
尊榮會員


發表:27
回覆:662
積分:622
註冊:2002-07-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-03-24 20:22:38 IP:218.160.xxx.xxx 未訂閱
Hi vivi666666 try this :
Update A 
Set MNY = MNY-(Select sum(MNY) from B where Customer = A.Customer)     
我不是高手, 高手是正在銀幕前微笑的人.
------


我不是高手, 高手是正在銀幕前微笑的人.
deity
尊榮會員


發表:90
回覆:876
積分:678
註冊:2003-05-09

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-03-24 20:48:43 IP:218.15.xxx.xxx 未訂閱
你好: 试试这种写法行不行 > ——行径窄处,留一步与人行—— 發表人 -
系統時間:2024-07-03 6:50:06
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!