全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:974
推到 Plurk!
推到 Facebook!

SQL查询问题。

尚未結案
hrbshen
一般會員


發表:10
回覆:11
積分:4
註冊:2005-04-12

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-08-04 14:04:00 IP:218.9.xxx.xxx 未訂閱
我有一个数据库,其中有表A和B。 表A中有字段:流水号、部门 表B中有字段:流水号、日期、金额 我想按部门显示金额之和。如何写SQL? 说明:表A、表B中流水号并不是唯一的,都有可能有重复的流水号。 谢谢。 我原来用以下方式,不可以实现。 Select 部门,SUM(金额) AS 合计 From b,a Where a.流水号=b.流水号 and 日期 between.... group by 部门 即当B中某流水号只有一条记录,而当A中有相同的此流水号有两条记录时,合计值为B表中金额的2倍。
syntax
尊榮會員


發表:26
回覆:1139
積分:1258
註冊:2002-04-23

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-08-04 23:43:48 IP:61.64.xxx.xxx 未訂閱
你先去學學 Database 的觀念吧 你數據庫的基本設計上,有問題 請先設計出符合 3NF 的基本架構吧
cwc65536
初階會員


發表:47
回覆:121
積分:48
註冊:2004-10-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-08-05 01:31:41 IP:203.203.xxx.xxx 未訂閱
syntax 兄, 您好 : 可否介紹一些資源, Database 的觀念 ? 3NF 的基本架構 ? 對我這種胡亂搞,沒有學理基礎的人,幫助會大些 ! 3Q    hrbshen  您的問題很模糊, 最好丟一段 A , B 的資料內容, 再說明要怎樣加總, 會好些! syntax 兄,意思就是這樣(關連性,說明不清).     猜猜你要的, 用兩句 SQL 可以嗎 ? (select子句,不熟,限制多,速度慢)    select DISTINCT * into C from A    select PART,sum(AMT) as TAMT from B,C where B.NO=C.NO group by PART    測試資料
A表 . NO  PART
     ---- ----
        1 P1
        1 P1
        2 P2
        2 P2
        1 P1
        3 P2       B表 . NO  AMT  
     ---- ---- 
        1 100
        2 200
        3 300      日期範圍(應該不是您的難處吧!),就不多說
hrbshen
一般會員


發表:10
回覆:11
積分:4
註冊:2005-04-12

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-08-05 09:52:14 IP:218.9.xxx.xxx 未訂閱
引言: 你先去學學 Database 的觀念吧 你數據庫的基本設計上,有問題 請先設計出符合 3NF 的基本架構吧
首先对你的回复表示感谢。 实际上,我问题中的A、B两个表是一个大数据库中的两个子表。 即,A、B上面还有一个主表,主表中的流水号是唯一的,A、B两个表实际上是并列的两个子表,A、B之间很难构成主从关系。 问题现在已经解决,方法与cwc65536的差不多,也采用了Distinct。 再次表示感谢。
系統時間:2024-06-26 9:36:09
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!