加快更新關聯至其它table的速度 |
答題得分者是:timhuang
|
danajn
一般會員 發表:14 回覆:29 積分:8 註冊:2002-08-01 發送簡訊給我 |
TA table內容如下
T1 T2 T3
性質 單號 項次 金額 | 單號 項次 存在TA
X A01 1 30 | A01 1
X A01 2 40 | A01 2
. . |
. . |
Y B01 1 10 |
Y B02 3 50 |
. . |
. . |
Z C01 2 40 |
Z C03 1 10 | 若性質為X則至T1 table ,Y 至T2 ,Z至T3 ,更新(存在TA ='Y') 欲從上列的table內容依其性質更新至Table(T1,T2,T3)
除一筆一筆更新外是否有其他方法可讓速度加外
thx......
|
Justmade
版主 發表:94 回覆:1934 積分:2030 註冊:2003-03-12 發送簡訊給我 |
引言: TA table內容如下一般可以以SQL 來直接更新會較快程式也易寫,不過要先攪清楚 1. 你是使用甚麼數據庫 2. ta 裡的數據 t1,2,3 是否可能以存在還是所有都是新增的?T1 T2 T3 性質 單號 項次 金額 | 單號 項次 存在TA X A01 1 30 | A01 1 X A01 2 40 | A01 2 . . | . . | Y B01 1 10 | Y B02 3 50 | . . | . . | Z C01 2 40 | Z C03 1 10 |若性質為X則至T1 table ,Y 至T2 ,Z至T3 ,更新(存在TA ='Y') 欲從上列的table內容依其性質更新至Table(T1,T2,T3) 除一筆一筆更新外是否有其他方法可讓速度加外 |
danajn
一般會員 發表:14 回覆:29 積分:8 註冊:2002-08-01 發送簡訊給我 |
|
timhuang
尊榮會員 發表:78 回覆:1815 積分:1608 註冊:2002-07-15 發送簡訊給我 |
引言: 1.資料庫 oracle 2.TA的資料是由T1,T2,T3來的,所以一定會存在T1,T2,T3 3.總共有四個table => TA,T1,T2,T3 TA是一定存在 T1 or T2 or T3 若T1 or T2 or T3 存在ta則存在ta='Y'所以簡單地說就是 TA 的資料一定存在於 T1 or T2 or T3 三者任一之中. 但 T1, T2, T3 中的資料不一定都在 TA 出現. 現要將 T1, T2, T3 中的資料若出現在 TA 中的話, 就將其 ta update 為 'Y', 以下 sql command 為你要的. 可以一次處理 UPDATE T1 SET 存在TA='Y' WHERE EXISTS (SELECT * FROM TA WHERE TA.性質='X' AND TA.單號=T1.單號 AND TA.項次=T1.項次) UPDATE T2 SET 存在TA='Y' WHERE EXISTS (SELECT * FROM TA WHERE TA.性質='Y' AND TA.單號=T2.單號 AND TA.項次=T2.項次) UPDATE T3 SET 存在TA='Y' WHERE EXISTS (SELECT * FROM TA WHERE TA.性質='Z' AND TA.單號=T3.單號 AND TA.項次=T3.項次) |
danajn
一般會員 發表:14 回覆:29 積分:8 註冊:2002-08-01 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |