分類統計總和的SQL指令 |
尚未結案
|
Andy Wu
一般會員 發表:17 回覆:25 積分:18 註冊:2004-02-25 發送簡訊給我 |
小弟使用的資料庫是Oracle,其中有一個資料表要做統計總和的查詢報表,不知道SQL指令該如何下,資料表的內容暨結構如下: 主鍵 郵寄方式 信件種類 數量 日期
1 航空 平信 2 2004/01/01
2 航空 掛號 5 2004/01/01
3 航空 掛號 3 2004/01/01
4 船運 平信 5 2004/01/01
5 船運 掛號 2 2004/01/01
.. 如果我以日期來作為查詢條件,希望能夠得到:
「在2004/01/01當天,『航空-平信』的數量、『航空-掛號』的數量、『船運-平信』的數量、『船運-掛號』的數量」,請教該怎麼下降子的SQL指令呢? 發表人 - Andy Wu 於 2004/03/08 00:35:47
|
Chance36
版主 發表:31 回覆:1033 積分:792 註冊:2002-12-31 發送簡訊給我 |
引言: 小弟使用的資料庫是Oracle,其中有一個資料表要做統計總和的查詢報表,不知道SQL指令該如何下,資料表的內容暨結構如下: 主鍵 郵寄方式 信件種類 數量 日期 1 航空 平信 2 2004/01/01 2 航空 掛號 5 2004/01/01 3 航空 掛號 3 2004/01/01 4 船運 平信 5 2004/01/01 5 船運 掛號 2 2004/01/01 .. 如果我以日期來作為查詢條件,希望能夠得到: 「在2004/01/01當天,『航空-平信』的數量、『航空-掛號』的數量、『船運-平信』的數量、『船運-掛號』的數量」,請教該怎麼下降子的SQL指令呢?Andy Wu 你好 試試下列SQL指令 Select 日期,郵寄方式,信件種類,SUM(數量) From TableName Where 日期="2004/01/01" And ........(日期表示式不知對不對) Group By 日期,郵寄方式,信件種類 |
babyfish4
一般會員 發表:2 回覆:40 積分:18 註冊:2003-08-04 發送簡訊給我 |
您好:
試試看
1.select 郵寄方式,信件種類,sum(數量) from XXXXXX where
To_Char(日期,'YYYY/MM/DD')='2004/01/01'
group by 郵寄方式,信件種類 2.select 郵寄方式,sum(數量) from XXXXXX where
To_Char(日期,'YYYY/MM/DD')='2004/01/01'
group by 郵寄方式
引言: 小弟使用的資料庫是Oracle,其中有一個資料表要做統計總和的查詢報表,不知道SQL指令該如何下,資料表的內容暨結構如下: 主鍵 郵寄方式 信件種類 數量 日期 1 航空 平信 2 2004/01/01 2 航空 掛號 5 2004/01/01 3 航空 掛號 3 2004/01/01 4 船運 平信 5 2004/01/01 5 船運 掛號 2 2004/01/01 .. 如果我以日期來作為查詢條件,希望能夠得到: 「在2004/01/01當天,『航空-平信』的數量、『航空-掛號』的數量、『船運-平信』的數量、『船運-掛號』的數量」,請教該怎麼下降子的SQL指令呢?Andy Wu 你好 試試下列SQL指令 Select 日期,郵寄方式,信件種類,SUM(數量) From TableName Where 日期="2004/01/01" And ........(日期表示式不知對不對) Group By 日期,郵寄方式,信件種類 [/quote] |
deity
尊榮會員 發表:90 回覆:876 積分:678 註冊:2003-05-09 發送簡訊給我 |
引言: 小弟使用的資料庫是Oracle,其中有一個資料表要做統計總和的查詢報表,不知道SQL指令該如何下,資料表的內容暨結構如下: 主鍵 郵寄方式 信件種類 數量 日期 1 航空 平信 2 2004/01/01 2 航空 掛號 5 2004/01/01 3 航空 掛號 3 2004/01/01 4 船運 平信 5 2004/01/01 5 船運 掛號 2 2004/01/01 .. 如果我以日期來作為查詢條件,希望能夠得到: 「在2004/01/01當天,『航空-平信』的數量、『航空-掛號』的數量、『船運-平信』的數量、『船運-掛號』的數量」,請教該怎麼下降子的SQL指令呢? 你好: 要获取当天的各记录总数,你可以试试如下,应该能达到你所要的效果 begin Query1.Close; Query1.SQL.Clear; Query1.sql.Text:='select 郵寄方式,件種類,日期,sum(數量)數量1 from table1 where 日期=:rq group by 郵寄方式,件種類,日期'; Query1.Params [0].DataType :=ftdate; Query1.Params [0].Value :=now; //当前时间 Query1.Open; end; 这样可以获得不同郵寄方式,不同件種類的当天的记录总数,试试。 另外,還可以查出「航空」跟「船運」的個別『總數量』嗎? 可以的,将上面的 Query1.sql.Text:='select 郵寄方式,件種類,日期,sum(數量)數量1 from table1 where 日期=:rq group by 郵寄方式,件種類,日期'; 改成: Query1.sql.Text:='select 郵寄方式,日期,sum(數量)數量1 from table1 where 日期=:rq group by 郵寄方式,日期'; 去除‘件種類’即可! 發表人 - Andy Wu 於 2004/03/08 01:41:36——行径窄处,留一步与人行—— 發表人 - deity 於 2004/03/08 10:07:15 |
Andy Wu
一般會員 發表:17 回覆:25 積分:18 註冊:2004-02-25 發送簡訊給我 |
引言: 你好: 要获取当天的各记录总数,你可以试试如下,应该能达到你所要的效果 begin Query1.Close; Query1.SQL.Clear; Query1.sql.Text:='select 郵寄方式,件種類,日期,sum(數量)數量1 from table1 where 日期=:rq group by 郵寄方式,件種類,日期'; Query1.Params [0].DataType :=ftdate; Query1.Params [0].Value :=now; //当前时间 Query1.Open; end; 这样可以获得不同郵寄方式,不同件種類的当天的记录总数,试试。 另外,還可以查出「航空」跟「船運」的個別『總數量』嗎? 可以的,将上面的 Query1.sql.Text:='select 郵寄方式,件種類,日期,sum(數量)數量1 from table1 where 日期=:rq group by 郵寄方式,件種類,日期'; 改成: Query1.sql.Text:='select 郵寄方式,日期,sum(數量)數量1 from table1 where 日期=:rq group by 郵寄方式,日期'; 去除‘件種類’即可!謝謝Chance36、deity、babyfish4三位大大的回答~~已經可以了~~ |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |