SQL問題 |
尚未結案
|
mygod
一般會員 發表:52 回覆:64 積分:23 註冊:2002-09-10 發送簡訊給我 |
|
chih
版主 發表:48 回覆:1186 積分:639 註冊:2002-04-02 發送簡訊給我 |
SELECT SUM(A.Field1 B.Field1) as Field1,SUM(A.Field2 B.Field2) as Field2
FROM A,B
WHERE A.xx=B.xx//xx就是你要將Table連結的key值..
try try see..
不行在post吧..
引言: 如果有多個table 每個table欄位都相同,field1~10 我該如何下SQL指令,才可以取得所有table中個別相同欄位的總和 如:field1的總和,field2的總和,field3的總和... 謝謝 oh~mygod |
mygod
一般會員 發表:52 回覆:64 積分:23 註冊:2002-09-10 發送簡訊給我 |
其實我真正的問題在於,這些table可能是一個區間,如table1~10、table10~100
所以我目前是用迴圈寫SQL指令(類似chih兄所寫的SQL,然後用迴圈將各部分串接) 因為欄位有1、2十個,所以用迴圈寫很麻煩,是否有方法可以將所有的table合併成一暫時的table,然後對此temp table下SQL指令
select sum(field1),sum(field2),...,sum(field20) from tmptable
而不用
select sum(t1.field1 t2.field1 ... t10.field1) as field1,
sum(t1.field2 t2.field2 ... t10.field2) as field2,
.
.
sum(t1.field20 t2.field20 ... t10.field20) as field20,
from t1,t2,...t10
P.S:所有table的欄位都相同 oh~mygod
------
oh~mygod |
FrederickPau
資深會員 發表:4 回覆:161 積分:268 註冊:2002-11-04 發送簡訊給我 |
如果你是用 SQL Server, 你可以試試 select sum(a), sum(b) from
((select * from table1) union (select * from table2)) as tmptable 為了防止你的所有 table 會有相同的 Record 出現 (會只剩一筆), 你可以在 union 後面加 ALL, 變成: select sum(a), sum(b) from
((select * from table1) union ALL (select * from table2)) as tmptable 發表人 - FrederickPau 於 2002/12/08 03:31:33
|
mygod
一般會員 發表:52 回覆:64 積分:23 註冊:2002-09-10 發送簡訊給我 |
|
ko
資深會員 發表:28 回覆:785 積分:444 註冊:2002-08-14 發送簡訊給我 |
引言: 其實我真正的問題在於,這些table可能是一個區間,如table1~10、table10~100 所以我目前是用迴圈寫SQL指令(類似chih兄所寫的SQL,然後用迴圈將各部分串接) 因為欄位有1、2十個,所以用迴圈寫很麻煩,是否有方法可以將所有的table合併成一暫時的table,然後對此temp table下SQL指令/*找出在奧克蘭市(Oakland)有那些作者的郵遞區號是相同的*/ select distinct a1.au_lname,a1.au_fname,a1.zip,a1.city from authors a1,authors a2 where a1.zip=a2.zip and a1.city='Oakland' and a1.au_id!=a2.au_id 這是屬於資料表自己連自己
------
====================== 昏睡~ 不昏睡~ 不由昏睡~ |
mygod
一般會員 發表:52 回覆:64 積分:23 註冊:2002-09-10 發送簡訊給我 |
|
領航天使
站長 發表:12216 回覆:4186 積分:4084 註冊:2001-07-25 發送簡訊給我 |
引言: 如果有多個table 每個table欄位都相同,field1~10 我該如何下SQL指令,才可以取得所有table中個別相同欄位的總和 如:field1的總和,field2的總和,field3的總和... 謝謝 oh~mygod用UNION指令試看看 select sum(f01),sum(f02) from ( select * from table1 union select * from table2 ) as tablesum 以上這個SQL指令在MS-SQL測試過可以, 但在MY-SQL上您要試看看囉! ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~ |
mygod
一般會員 發表:52 回覆:64 積分:23 註冊:2002-09-10 發送簡訊給我 |
|
chih
版主 發表:48 回覆:1186 積分:639 註冊:2002-04-02 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |